Hello. I am New Here and This is my First Post I'll Start with a Question, That is I know java, But not much. And I know how to build a Program if some one tell me to make a program that calculates area of a Square and something like that. But I like to make Some Good APPs like, A Simple music player, That works like this when some one click a button it pays a sound and just as that. And a Software that can Gather URLs from a Given Web site and some more things like that But My Question is How to find out the procedure of making such Apps. How do Other Programers make them. If Some one tell me to explain how the Square area calculator works I can Explain it to him. But Why can't i understand the other Apps like that? Such as the music player. So What I must do to Understand those? Thanks
You need to learn software engineering, not only programming languages. In your case (building simple softwares like a simple music player), your software will be consist of several classes. Each class has its own responsibilities, like accepting user action, loading, playing, and unloading audio files, etc. You break down those responsibilities into methods. Then those classes interact with other classes..
I know OOP And How to Learn Engineering? I am doing Bachelor Degree in IT. Will I get knowledge after the Degree?
I see.. You can read several books on software engineering and UML. You should check your course curriculum.
Thanks Friend. My Course has UML to be Taught in the Future. And By Reading UML related books will i get the idea of how to make Apps?
I just realized that if I wrote "s o f t w a r e engineering" (without spaces), this forum would delete the "s o f t w a r e" word and leave only the "engineering" word intact..
It all depends on what you are wanting to achieve/ your circumstances. If you look at the traditional V/ waterfall method of developement you start with gathering the requirements and end with testing with several stages in between. This obviously suites the corporate approach to the world where you need all the checks and measures to be in place and have the money/ time/ man power to do them. If you are creating a simple app for yourself that is never going to become anything more then it is questionable if you would gain any benefit from going through all the stages. What do you want to become afterwards? A programmer? A solution architect/ analyst? A tester? A Business Analyst? All should be able to read UML but other skills will vary depending on the role, a SA doesnt need to be able to write complex code but needs a good understanding of all systems where as a Java programmer needs to be damned good at that but won't need to know how to plan a datawarehouse from the version of SQL, the amount of ram/ cpu's to put in the cluster etc
Hi, It's good that you are gaining theoretical knowledge. I would advise you though that you work! There's nothing better that doing simple examples from books, tutorials etc. Learn how is this or that working, why is it the way it is, change something and so on. Nothing better than practice. Further more - decide exactly what you'll be - developer, architect, QA etc ...