Question:
What programming language should I learn to become a good software developer?
1970-01-01 00:00:00 UTC
What programming language should I learn to become a good software developer?
Thirteen answers:
Henry
2012-10-27 07:22:06 UTC
Like some said, you can become a good software developer in any language. However, I would suggest going towards the languages like C++, C#, and Java that employers look for.
Rahul
2012-10-27 02:16:13 UTC
you should study c++
Para
2012-10-27 02:13:33 UTC
pascal, C, C++, . in this order preferably.



mysql is not a programming language, it is an sql-based database server.
Your Fat Mama
2012-10-27 02:10:16 UTC
If you want to be a good developer, you should forget asp.net.
2016-02-25 04:07:43 UTC
The main ones are C, C++ and Java, although a basic knowledge of Assembler is also important. There are some other domain-specific ones too, for instance a web developer needs to know PHP, ASP and Javascript. A game developer may need to know Lua and will also have to be familiar with 3D libraries for other languages.
Professional
2012-10-28 02:14:43 UTC
java and dot net are the best programming language for become a good software developer
2012-10-27 03:22:48 UTC
It will depend upon the type of software you are planning on developing.
Shubham
2012-10-27 02:30:15 UTC
JAVA



OR



.NET (specially VB.NET )
Suneel Kuppili
2012-10-27 02:21:03 UTC
Java or .net, but you can become Good Software Developer in any language.
SaSoft
2012-10-27 06:24:15 UTC
How to become a good programmer

At ReliSource, many of the times I am involved in the hiring process and need to take several interviews per week/month. Over the last two years, I’m observing one unfortunate truth which is: Bangladesh is lacking enough skilled programmers. Some people have talked about this issue previously and I think it’s time to take some real steps to improve the situation so that we do not face a disaster in the near future.



I’m putting some suggestions here for the fresh graduates and the college freshmen on how to become a good programmer.



In my own definition, a fresh graduate good/skilled programmer should have the followings:



Strong skill of one or more good languages like C++, Java and C#.

Must have strong skills with control structures. Don’t mess up if you’re asked to print out triangle or other shaped piles of ‘x’s with loops.

Must have strong skills with recursion. You must know how to transform a looped task into a recursive one and vice versa, for example: multiplication using addition recursively.

If your language is C/C++, you must know how to play with pointers and references.

Understand pass by value and reference.

Clearly understand scopes and memory allocation, de-allocation. Know when a object is destroyed and when to destroy.

Know the usage of all operators including bit-wise ones.

In-depth knowledge of OOP.

Only being able to write classes and doing encapsulation and inheritance is not what you should call good OOP.

Clearly understand how function overloading, overriding, polymorphism works.

Clearly understand how constructor/destructor (if any) works with inheritance.

Clearly know the difference and use of Interfaces and Abstract classes.

Know how to overload operators. Why and how copy constructor is defined/used.

Know common data structures

At least know the common data structures like stack, queue, linked list, doubly linked list (know circular version of all of them) and trees.

Be a skilled implementer of any of those, have clear concept of how push, pop, add, delete, peek etc method works on those data structures.

Know most common algorithms well

You don’t need to memorize pseudo codes line by line but you need to have clear concept of most common algorithms of sorting(bubble, quick, merge, heap, bucket, etc), searching (including DFS, BFS), etc.

As a fresher you must know their time and space complexities, pitfalls and improvements (if any).

General computing concepts:

Know processes and threads, how are they related to each other, how to program them, etc.

Understand TCP/IP: Don’t think it’s only the network administrator’s task to understand TCP/IP. All programmers ever doing any network or web programming should have clear TCP/IP concepts and understanding.

Be skilled in debugging in IDEs:

Be skilled in any of Visual Studio/Visual Studio.Net, Eclipse, Netbeans, KDevelop, etc.

Know how to debug your code.

Have basic knowledge of Software Engineering and SDLC.



Some advice for college freshmen:



Start with C++ or Java, avoid starting with scripting languages:

If you’re learning programming for the first time, avoid starting with scripting or loosely typed languages like: PHP, ASP, Perl, etc or Visual Basic. It may destroy your understanding of program execution, data types, memory allocation, etc.

Start with C++ or Java. If you want to me to be specific, start with C++, you’ll love it for the rest of your life.. :) It’ll be easier for you to learn (almost) any other language (like: C#, PHP, ASP, etc).

If you ask, do you need to know C to start with C++? Or should you learn C first and then C++? C definitely helps a lot for learning C++ but it's not mandatory to start with C.

If you want to be a good programmer, keep on coding at least 20 hours a week for the next 4 years :).

Never stop learning new technologies that are coming out everyday.

Know some of the many languages/technologies but be master of one. Know at least one language very well.



Good luck!
pelak
2016-12-08 13:29:24 UTC
Software Engineering Programming Languages
Dadashree
2015-09-05 03:13:32 UTC
In My way you have to start with C, C++, Java & .Net . These are the best



Programming to become a software developer....
Boamnu
2016-11-16 02:30:21 UTC
If you want to be a good programmer, keep on coding at least 20 hours a week for the next 4 years :).

Never stop learning new technologies that are coming out everyday.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Continue reading on narkive:
Loading...