child Posted March 7, 2014 Share Posted March 7, 2014 My question is:In Summary: What is the best practice to make a software... from stretch to finish product? In detail: 1- Where/How I draw the my thoughts...? Means, I am thinking about a software, its design, its layouts, its working pattern, about its users, I want to make a rough video about its working, makes rough images about its layout etc.2- How do I write helping documents for future reference...?3- How do I make help file for end user...?4- How do I save different versions coding...?5- Which one is better 1- Single exe program, or 2- Multiple exe/dll/configuration files6- I only know SQLlite for saving records (server less), is there some other option available .....? For example some temporary data in a file, make cache for fast access, generate on fly thumbnail, random calculationNote: I am start working in C# ------------------------------------This time I am sure I am posting my question in correct place...but if it was wrong please moved it... (at least inform me the correct thread)... Quote Link to comment Share on other sites More sharing options...
AlexCross Posted March 7, 2014 Share Posted March 7, 2014 The hart of a program is done in C/C++/Java most of the time, for example Solaris is done in C. So you should start from here.To learn C++ you need to start with C because C++ is an evoluted C if I can say that. Quote Link to comment Share on other sites More sharing options...
geeteam Posted March 7, 2014 Share Posted March 7, 2014 Well there are so many ways to do that, am gonna recommend some website for you that you can check them out. codeproject.com, github.com, sourceforge.net and more. Quote Link to comment Share on other sites More sharing options...
Cyberboom Posted March 7, 2014 Share Posted March 7, 2014 (edited) 1- Where/How I draw the my thoughts...? Means, I am thinking about a software, its design, its layouts, its working pattern, about its users, I want to make a rough video about its working, makes rough images about its layout etc.I don't think that stage of software developing has essential importance . I mean for simple software creation you can draw ideas and planing steps on normal papers or any simple drawing software but if you want to be professional programmer ,you should learn about UMLs concepts (I personally use Visual Paradigm for UML (www.visual-paradigm.com/product/vpuml/)2- How do I write helping documents for future reference...?What do you mean exactly ?3- How do I make help file for end user...?You can build online web-based help or you can simply put simple html help pages with your software ..most used way to build offline help is using chm file builder software like :HTML Help Workshop (I prefer using HelpNDoc ^_^ )4- How do I save different versions coding...?Do you mean , how to export a software to different OS platforms ? 5- Which one is better 1- Single exe program, or 2- Multiple exe/dll/configuration filesSimply , Single executable file method for simply/tiny software and for some other purposes ..Multiple EXEs or exe with other external resources : is almost the more used method for creating any software . :) 6- I only know SQLlite for saving records (server less), is there some other option available .....? For example some temporary data in a file, make cache for fast access, generate on fly thumbnail, random calculationSQLite is good and easy to learn :) There are many simple ways/method for saving software data like :simple file system stream , xml ,config files ...) I don't really know much about making caches , thumbnails .. :lol: Edited March 8, 2014 by Cyberboom Quote Link to comment Share on other sites More sharing options...
Reefa Posted March 8, 2014 Share Posted March 8, 2014 This guy teaches it all..The best and easiest to understand i have found : thenewboston Quote Link to comment Share on other sites More sharing options...
pr3y Posted March 8, 2014 Share Posted March 8, 2014 1- Where/How I draw the my thoughts...?You need to do some planning on paper. Ask the client/stakeholders the requirements of the software especially the functional and non-functional requirements. Once you have the basic idea you can draw some UML diagrams.This guy explain the idea well https://www.youtube.com/playlist?list=PLGLfVvz_LVvS5P7khyR4xDp7T9lCk9PgEI would recommend watch the above videos if you're serious about programming. (Especially useful when working on large complex projects)Also always follow some agile practices.2- How do I write helping documents for future reference...?Depend what language you're using. In java you can simple create javadocs for the classes, methods....Most object oriented languages have some way to provide documentation, i been using Doxygen to create them and it also support C#.4- How do I save different versions coding...?Best way is to use some sort of version control like Git.6- I only know SQLlite for saving records (server less), is there some other option available .....?Depend on what you are really after. You can take the SQL approach and use something like SQLite or use a NoSQL databases like MongoDB which is scalable.Again it depend on your requirements whether you need the features of relational databases or not. Quote Link to comment Share on other sites More sharing options...
child Posted March 8, 2014 Author Share Posted March 8, 2014 @Cyberroom @F3dupsk1Nup Thats the things I want to know....... Coding the program is somethings else .... but you should know your tools better tools....better result is less effort Please guide some better UML program Quote Link to comment Share on other sites More sharing options...
AlexCross Posted March 8, 2014 Share Posted March 8, 2014 Thenewboston is ok, but only for beginners, I watched his MySQL "lessons", and it covers just ~50 pages of my MySQL book that has ~800 pages. Quote Link to comment Share on other sites More sharing options...
child Posted March 8, 2014 Author Share Posted March 8, 2014 What IDE would you suggest Visualstudio or something else.... Quote Link to comment Share on other sites More sharing options...
child Posted March 8, 2014 Author Share Posted March 8, 2014 6- I only know SQLlite for saving records (server less), is there some other option available .....?Depend on what you are really after. You can take the SQL approach and use something like SQLite or use a NoSQL databases like MongoDB which is scalable.Again it depend on your requirements whether you need the features of relational databases or not.Once I use only .txt file... :) Quote Link to comment Share on other sites More sharing options...
child Posted March 8, 2014 Author Share Posted March 8, 2014 1- Where/How I draw the my thoughts...?You need to do some planning on paper. Ask the client/stakeholders the requirements of the software especially the functional and non-functional requirements. Once you have the basic idea you can draw some UML diagrams.This guy explain the idea well https://www.youtube.com/playlist?list=PLGLfVvz_LVvS5P7khyR4xDp7T9lCk9PgEI would recommend watch the above videos if you're serious about programming. (Especially useful when working on large complex projects)Also always follow some agile practices.I will download these videos on Monday....What does your mean "agile Practices" Quote Link to comment Share on other sites More sharing options...
child Posted March 8, 2014 Author Share Posted March 8, 2014 1- Where/How I draw the my thoughts...? Means, I am thinking about a software, its design, its layouts, its working pattern, about its users, I want to make a rough video about its working, makes rough images about its layout etc.I don't think that stage of software developing has essential importance . I mean for simple software creation you can draw ideas and planing steps on normal papers or any simple drawing software but if you want to be professional programmer ,you should learn about UMLs concepts (I personally use Visual Paradigm for UML (www.visual-paradigm.com/product/vpuml/)1- Where/How I draw the my thoughts...?You need to do some planning on paper. Ask the client/stakeholders the requirements of the software especially the functional and non-functional requirements. Once you have the basic idea you can draw some UML diagrams.This guy explain the idea well https://www.youtube.com/playlist?list=PLGLfVvz_LVvS5P7khyR4xDp7T9lCk9PgEI would recommend watch the above videos if you're serious about programming. (Especially useful when working on large complex projects)Also always follow some agile practices.I have experience to use visio and smartdraw.... What would you prefer other than these software which are commercial and enough for future OS. I didn't find medicine for "Visual Paradigm for UML 11 enterprise/Professional edition"I have just googled many result found like starUML, Astah, Modelio, UMLGraph, Enterprise Architect UML and really can't decide to start which one...!!! :angry:@Pr3y what does your mean about "agile practice" Quote Link to comment Share on other sites More sharing options...
child Posted March 8, 2014 Author Share Posted March 8, 2014 3- How do I make help file for end user...?You can build online web-based help or you can simply put simple html help pages with your software ..most used way to build offline help is using chm file builder software like :HTML Help Workshop (I prefer using HelpNDoc ^_^ )I have Help & Manual Professional/Server edition plus premium Pack but din't find HelpNDoc Professional Edition with medicine.... :angry:5- Which one is better 1- Single exe program, or 2- Multiple exe/dll/configuration filesSimply , Single executable file method for simply/tiny software and for some other purposes ..Multiple EXEs or exe with other external resources : is almost the more used method for creating any software . :) Now I am planning to first start single exe (main program) and later add more exes as additional modules Quote Link to comment Share on other sites More sharing options...
AlexCross Posted March 9, 2014 Share Posted March 9, 2014 I don't understand what you want to do, what programing language do you know? You can't design the visual of a program, or how to implement the help topic in a program if you do not write the instructions of that program first. Quote Link to comment Share on other sites More sharing options...
pr3y Posted March 9, 2014 Share Posted March 9, 2014 (edited) @child The agile methods are a group of frameworks used as a guide to build, deploy and maintains a software (to make your project less prone to failure). It is a contrast to past methodologies like the waterfall cycle where is there is a high chance of project failure.The key idea is that you follow an iterative and evolutionary model suited for your need. There are tonnes of material online you can read about. Wiki explains if well: https://en.wikipedia.org/wiki/Software_development_methodologiesAlso this is a good place to start learning about agile http://www.agilemanifesto.org/For drawing UML diagrams I normally use Dia which is free and sometimes use Visual Paradigm Community edition.What IDE would you suggest Visualstudio or something else....This is a more of a personal choice. Everyone has their favourite IDE and there no best IDE which beats others. Others prefer to use text editor like Sublime or even Vim. Edited March 9, 2014 by pr3y Quote Link to comment Share on other sites More sharing options...
child Posted March 9, 2014 Author Share Posted March 9, 2014 I don't understand what you want to do, what programing language do you know? You can't design the visual of a program, or how to implement the help topic in a program if you do not write the instructions of that program first.May be I too much bothering you.......I am too slow to start something but I prefer to finish my home work before start any thing....... I am an electronics engineer... work with electronics from age of 16 and from past 13 years I also involve with computer hardware/software/programming... initially start with assembly than VB little C++ and now start .NET (C#)Yes we can design visual of a program..... it is my personal opinion... because if you visualize something in your brain you can also show it to others ....Yes I agree to you..... without program I can't implement help document but I don't waste time ... I just write all helping tips with program instruction..... Plus After many years of different working I have lot of different documentation..... and I just want to compile all of them in a single place for quick reference.... -------------------------------The main problem I am not finish my education as a programmer so I don't know many important things which you knows..... and I things it is better if you ask guidance from those who knows better than you.... Quote Link to comment Share on other sites More sharing options...
AlexCross Posted March 9, 2014 Share Posted March 9, 2014 You are not bothering me, but you need to give full details so people can understand what you want to do. Quote Link to comment Share on other sites More sharing options...
pr3y Posted March 9, 2014 Share Posted March 9, 2014 (edited) @child missed one of your question6- I only know SQLlite for saving records (server less), is there some other option available .....?Depend on what you are really after. You can take the SQL approach and use something like SQLite or use a NoSQL databases like MongoDB which is scalable.Again it depend on your requirements whether you need the features of relational databases or not.Once I use only .txt file... :)What do you mean by this? Edited March 9, 2014 by pr3y Quote Link to comment Share on other sites More sharing options...
child Posted March 9, 2014 Author Share Posted March 9, 2014 once i make a mobile sms sender through serial port at that time I save the contact list is txt file, sms in the other txt file..Plus onetime I take the machine setting from a txt file so the software connect with the machine. Quote Link to comment Share on other sites More sharing options...
pr3y Posted March 9, 2014 Share Posted March 9, 2014 Ok, for something like storing machine settings a config text file is probably the best way as you mentioned. The main purpose of using relational databases is to perform query operations between the information stored in the database. If you're not doing this there is no need to use a database. Quote Link to comment Share on other sites More sharing options...
child Posted March 9, 2014 Author Share Posted March 9, 2014 You are not bothering me, but you need to give full details so people can understand what you want to do.Ok, for something like storing machine settings a config text file is probably the best way as you mentioned. The main purpose of using relational databases is to perform query operations between the information stored in the database. If you're not doing this there is no need to use a database.and Now I want to make my own wish.... show the world what I visualize. :hypocrite:I have two project in my mind.....First one is related with my technical job........and the second one is my own wish (I don't want to disclose it at the moment.... :ph34r: ) and I believe it will not the baby work... may be years need to finish... but it will make the life is easier :fun: Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.