to learn all the C languages (C, C++ and C#). I am doing C++, but wonder if I should just do them all or learing one of them is just as good. I am not sure where to go with my career path as yet, I just know I want to do programming, through freelancing/self-employment or contracts. (I am looking into Database programming too).
7 1479 JosAH 11,448
Recognized Expert MVP
I know that quite a lot of people will disagree with me but a thorough understanding
of the C language is a solid basis for further knowledge. C is no more and no less
than a structured assembly language and quite a clever one. If you really understand
C you can almost see the machine code shining through the C source code.
C also helps you to understand what C++ is all about; internally that is; you'll
understand 'this pointers' and virtual function tables etc. etc. C# is not much
different (nor is Java btw) so my advice is to work your way up and only step
further after you've thoroughly understood the current step.
Database programming (SQL?) is an entirely different cup of tea.
kind regards,
Jos
Yes, I do disagree with JosAH.
The most important thing is the application. That is, the subject of your programming. Are you doing finance? Of so, are you an accountant? Are you doing graphic design? Are you a graphic designer? Are you buildiong web site? Are you a web site developer?
etc...
Anyone can learn C, C++, C#, Java. It takes about a year to get good at any one of these. However, with no place to use your knowledge, you will just forget everything. You simply have to apply application knowledge. Application knowledge (sometimes called "background") can take years to acquire.
In my case, I have been a C++ instructor for many years. I know C++ syntax. However, I don't know how to apply C++, in say, designing a Boeing 787. There's a little aeronautical backgound that I am missing. So I teach C++ to the engineers. I give them complete understanding of C++ but I havent't a clue what their programs do.
So, have you asked yourself what it is that youe would like to do?
RedSon 5,000
Recognized Expert Expert
Another thing that people fail to realize (at least when first starting) is that programming isn't dependent on a language. Language is a tool, you don't build a house with a hammer and a pile of wood, you first go out and learn about house building. C/C++ is as much about programming as a hammer and nail is about carpentry.
You can learn to be a programmer without learning a specific language.
However, now that you have good theoretical understanding of programming you have to somehow translate that into something useful if you want a job, that is where the knowledge of a language comes in.
Yup, languages are a tool and nothing more.
If you are interested in database programming and thus business logic, i would say, start with c# or java
Both of these languages have many similarities with c/c++ and come with a whole bunch of features that allow you actually learn the language rather than spending all the time to getting it to work.
Once you know the basic fundamentals of programming, you can move to other languages like C in no time at all.
One other reason for recommending C# first is that object oriented paradigm is conceptually harder to understand than procedural (C)
Also, you can apply and start building programs in C# and Java sooner than C
oler1s 671
Recognized Expert Contributor
I know that quite a lot of people will disagree with me but a thorough understanding of the C language is a solid basis for further knowledge.
People like me. No, C is not needed to understand another language, just as much as you do not need to drive old cars to understand how new cars work. It may actually be detrimental. C is devoid of modern C++ semantics and teaches you the wrong programming style. I’m not going to type up an entire article on why learning C first is flawed, just know that there is a valid reason why a majority of people oppose learning C first.
My advice: play around with Python, or C#. Python is very versatile, and C# is also a good language. You can make various applications with them, and touch web development with either. If you don’t know what you really want to do with programming, they are great languages to start with (actually, they are great languages to start with regardless).
One other reason for recommending C# first is that object oriented paradigm is conceptually harder to understand than procedural (C)
OOP and Procedural are not orthogonal. You’re welcome to demonstrate non-trivial OO code that does not involve any procedural code.
Sorry I took so long to answer back, my internet was down, had to replace the cable modem.
Just to note C++ was the first language I ever programmed in and the reason I stayed in CIS that is why I wanted to start with it first it is the language I got more practice in. The problem I have is finding out how to use it in the real world, but that is a next topic I will post. I will try the c# and pyton next.
On the subject on what I may want to do, I am thinking to do freelance computer programming/contracts. I also don't mind teaching a language at a school or university. I don't care about stuff like benefits as I have those thing with my husband job. I like the flexiblity of the jobs above at least until I finish w/ children and they are in school, I hope I am not looking for too much.
OOP and Procedural are not orthogonal. You’re welcome to demonstrate non-trivial OO code that does not involve any procedural code.
what i meant was it is a lot easier to explain what '#include' does than what 'class' does...and a lot easier to learn too
Sign in to post your reply or Sign up for a free account.
Similar topics |
by: Thomas Heller |
last post by:
I'm currently working on a new version of py2exe, which will require
Python 2.3 and later, because it uses the zipimport mechanism.
Since py2exe is a distutils extension, and since C compilers...
|
by: Steve Covert |
last post by:
Has anyone encountered problems with building an installer for a Windows app
using Wise? In my case, the installation fails due an obfuscated dll.
Instructions are provided for remedying this from...
|
by: T.S.Negi |
last post by:
Hi All,
I want to give sequence no group wise, as follows:
Section EmpCode
-----------------------
A 1001
A 1003
A 1009
B ...
|
by: brooks |
last post by:
It seems that the Access 97 ADT and 2000 ODE installers can seriously
mess up a customer's computer.
Sagekey sells a script to prevent this (~$500) which runs on
Wise/Installshield (~$500) for a...
|
by: krishnarjun |
last post by:
hi to all,
suppose i created a sql table with one field..........then i inserted 5 records on that table.......
if i use datagrid for accessing these records it ll shows all the records row...
| |
by: Enrique Cruiz |
last post by:
Hello all,
I am currently implementing a fairly simple algorithm. It scans a
grayscale image, and computes a pixel's new value as a function of its
original value. Two passes are made, first...
|
by: ARC |
last post by:
Hello all,
I currently have an old version of Wise Install Builder version 7, and in
getting ready to go with Access 2007 installs with the Sagekey runtime
script, I really don't want to...
|
by: ARC |
last post by:
Hello all,
I know this isn't exactly the forum for this, but there are no Wise forums,
at least that I could find.
I have a 65MB install for an Access 2007 program. The install is using Wise...
|
by: patan anif |
last post by:
Hi,
I want paging in column wise ..not in Row wise in vs 2003
Actually i have 18 columns in datagrid. Now my requirement is first 6 columns ..after clicking Next remaining 6 columns and...
|
by: suganya |
last post by:
Hi
I displayed the data from DB to DataList control.
By default all data in datalist or datagrid is getting displayed row wise. Can any body guide me how to display the row wise data into...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
| |
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
|
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
| |
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
|
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...
| |