Miért C-vel érdemes kezdeni a programozást, amikor már (elvileg) gyakorlatban alig használják?
Csupán két tárgyilagos tévedés szerepelt a kérdésben:
1. Nem érdemes C-vel kezdeni.
2. Gyakorlatban igen sokat használják.
A C-t a gyakorlatban meglehetősen sok területen használják.
A beágyazott rendszereken dolgozók standard fejlesztőeszköze.
Tekintve, hogy mid-level nyelv a mai napig nincs is más, csak a C, ez még elég sokáig így is marad.
Én azért tartom érdemesnek ezzel kezdeni, mert
1) a C nyelv rengeteg más nyelvre hatással volt, szóval a szintaktikáján túl is találkozni fogsz olyan elemekkel, amiket a C-ből merítettek.
2) Kezdőként a tanulási görbe egy olyan jó közepesre van belőve. Tény, vannak dolgok, amiket elsőre nem fogsz megérteni, hanem elfogadod azt, hogy ez úgy van, ahogy, de mégsem kell annyi dolgot elfogadni, mint mondjuk Java vagy C# esetében. Erre máris mutatok egy példát:
Python - Ebben a kis programban minden elsőre tiszta, hogy mit csinál
print "Hello World"
C - Itt már vannak dolgok, amiket kezdőként csak később fogsz megérteni
#include <stdio.h>
int main() {
.. puts("Hello World");
.. return 0;
}
C# - itt már az OOP miatt kicsit túl van tolva az "elfogadom, mert így van" dolgok listája, de az látható, hogy szintaktikában vett át elemeket a C-ből:
using System;
namespace MyFirstApp {
.. public class Program {
.. .. public static void Main() {
.. .. .. Console.WriteLine("Hello World!");
.. .. }
.. }
}
3) Én jó dolognak tartom azt, hogy a C nyelvben a pointerek a kódban jelölve vannak, tehát látod, mikor használsz lokális változót és mikor használsz memóriacímet. Más nyelvekben, mint a C#-ban és a Javában ezek el vannak rejtve előled, tehát nehezebb megérteni, mi a különbség a C#-os value-type és reference-type között. Azt is könnyebb megérteni, hogy mivel könnyíti meg az életedet a garbage collector. Véleményem szerint ezért megéri szívni C-ben.
Pedagógiailag azzal érdemes kezdeni, ami könnyű, és ahol nem a nyelvi sajátosságok kötik le a figyelmet, hanem lehet mellette az algoritmizálásra koncentrálni. Tudod, 1. osztályban sem Coelho művein tanulnak olvasni, hanem elemi olvasókönyvből.. pedig azt "a gyakorlatban alig használják".
Aztán ha már tudsz programozni, egy újabb nyelv elsajátítása elég könnyű lesz. De ha a kezdeti, nyelvnek betudható kudarcok eleve megutáltatják a programozást, akkor tök irreleváns, hogy arra amúgy mekkora lett volna a piaci igény.
Én ezért mondom, hogy akármennyire is divat szidni, a Pascal egy tökéletes tanulónyelv. Elég szigorú, de elég következetes, és nem nehéz. Vagy esetleg Perl, vagy VB.
A C-t meg nem igaz, hogy alig használják. Csak rendszerint "alacsonyabb szintű" szférákban. Ne gondold, hogy egy beágyazott rendszert, ami mondjuk felügyelet nélkül kell, hogy működjön hónapokon át, és baromi kevés erőforrással kell, hogy gazdálkodjon, hogy azt majd Javaban, Node JS-ben, vagy C#-ban fognak írni.
Továbbá: a C az alapja az összes C-alapú nyelvnek. Ideális alap, hogy arra akármilyen másik C-alapú technikát könnyűszerrel megtanulj.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!