Hirdetés
- Hobby elektronika
- Milyen videókártyát?
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Gaming notebook topik
- Raspberry Pi
- Milyen TV-t vegyek?
- AMD Radeon RX 7700-as VGA-val gyarapította kínálatát az ASRock
- Mini-ITX
- Egy kiegészítővel headsetté alakítható egy sor Sennheiser fejhallgató
- Androidos tablet topic
Új hozzászólás Aktív témák
-
Vettem magamnak a fáradtságot és a fentit megírtam C-ben is. Ez lett:
#include <stdio.h>
int main(void)
{
char name[20000];
printf("What's your name?\n");
fgets(name,20000,stdin);
printf("Hello %s\n", name);
return 0;
}Csak összehasonlításnak, ismét itt ugyanez Pythonban:
name = input('Enter your name: ')
print('Hello', name)A fenti pythonos példát el lehet magyarázni egy teljesen kezdőnek úgy, hogy minden karakterről tudja, hogy miért ott van, ahol van. Ahhoz, hogy valaki ezt a C verziót megértse, legalább egy fél évnyi előtanulmány kell. Az meg szerintem nem egy túl jó pedagógia módszer, hogy úgy tanítunk valamit, hogy nem magyarázzuk el, hogy mi micsoda, hanem valamiféle voodooként kezeljük a dolgokat.
"Egyébként a pointerekhez nem kell tudni a gép belső működését."
De, mert különben egyáltalán nem érted, hogy mi is ez az egész. Lehet, hogy neked, akinek a fejében évtizedek óta összeállt a kép, ezek teljesen triviális dolgok, de kezdőként teljesen máshogy néznek ki a dolgok. Szerintem már az is hatalmas különbséget jelent, hogy egy nyelv erősen típusos, mint a C, vagy nem (mint a Python).
"Kezdésnek szerintem minél butább nyelv kell, hogy kevesebb legyen a zavaró tényező"
Szerintem a nyelvnek nem butának kell lennie, hanem egyszerűnek. Pont ezért jó a Python, hasonlítsd csak össze a két példát: kezdő szinten a Python programokban tényleg csak az lesz benne, ami kell, a C-s változatok meg tele lesznek voodooval, ami persze a kísérletezést is megnehezíti, mert pillanatok alatt bele tud futni olyan hibákba, amiket még nem is érthet, hogy miért hibák.
"Nincs semmi bajom a python szintaxisával, sőt, nekem nagyon tetszik. Csak egy kezdőnek nem biztos, hogy célszerű ezt ajánlani, mert ha más nyelvre megy, akkor jöhet a pofára esés."
A kezdőnél az a fontos, hogy a koncepciókat megértse, az meg akkor megy, ha minél kevesebb felesleges részlet viszi el a figyelmét. Egyébként meg a magam részéről a Python meg mondjuk a C++ vagy pláne a Java között alapszinten szintaktikában olyan nagyon nem látok különbséget.
-
"Amatőr hiba
"
Amatőr kifogás.
Amikor az ember egy-két évtizedet azzal töltött, hogy hatalmas, sokmilliósoros projekteken dolgozott, ahol folyamatosan új, addig még ismeretlen kódrészeken kell dolgoznia, akkor rájön arra, hogy mekkora érték az, hogy ha a kód jól olvasható és nem tud megtévesztő lenni."Minden másban is ha benyomom a kód formatot, de ezzel a pythonossal nagyon sokat szívtam egyszer egy gites fájl-al amit nagyon sokan szerkesztettek és össze vissza voltak a behúzások."
Miért nem nyomtál rá egy format code-ot?...
-
"A python-ban az, hogy a behúzások alapján működik a compiler szerintem rohadt gáz"
Egyáltalán nem, mert így az, amit a programozó lát, meg amit a compiler lát, az ugyanaz. Mutatom egy C-s példával, hogy miért jó ez:
Az ember megírja a kódot:
if ( a == b )
equal++;Aztán később kicsit bővíti:
if ( a == b )
trace("a and b are equal");
equal++;Aztán csodálkozik, hogy miért nem jó a kód (megtörtént eset alapján).
-
A C-vel az a gond, hogy bármit csinálni akarsz, belefutsz pointerekbe meg hasonlókba, amiknek a megértéséhez a gép belső működésének egy viszonylag komolyabb átlátása szükséges - egyáltalán nem egyszerű nyelv. Ráadásul pont a móricka-feladatoknál jön elő minduntalan a printf meg a scanf, amik a változó paraméterlistájukkal tökre elütnek a szokásos C-s stílustól és ott aztán tényleg sok hülyeséget lehet csinálni, mert nulla ellenőrzés van rájuk. Pl. hogy néz már ki C-ben az az örök klasszikus, ami Pythonban így:
name = input('Enter your name: ')
print('Hello', name)Azt meg nem értem, hogy miért mondod a Pythonra, hogy elcseszett a szintaxisa, de tényleg (oké, az OO-s résznél az explicit selfezés az tényleg az ember agyára tud menni, de mondjuk abban meg látok pedagógia értéket).
-
Egyébként hogy értelmesen is hozzászóljak, C-t szerintem nem érdemes, mert az gyakorlatilag egy plat... izé, értitek
A szokásos javaslatom a Python: script nyelv, ami miatt könnyű vele játszadozni, egyszerű dolgokat egyszerűen meg lehet benne csinálni, de tud bonyolult dolgokat is, OO-t is és egy ténylegesen létező, széleskörűen támogatott nyelv.
Új hozzászólás Aktív témák
- Honor Magic V2 5G 16/512GB fekete garanciás esztétikai hibás, hibátlan működés
- Garis Gamer Gép - ASUS B860M-A WiFI, Ultra 5 245KF, 32GB DDR5, RTX 5070, 1 TB M.2 SSD, 850W
- Nagyon szép állapot!! Dell Latitude 5480 i7-7820HQ 16GB 512GB SSD
- Gamer PC-Számítógép! Csere-Beszámítás! R5 8400F / RX 6800 16GB / 32GB DDR5 / 1TB SSD!
- Szép állapot!! Dell Latitude 5490 i3-7100U 8GB 512GB SSD
- Katonai Rugged laptopok Panasonic Toughbook és Getac S410 6-11.gen gar.
- Gamer PC-Számítógép! Csere-Beszámítás! R5 5500 / RX 6600XT / 32GB DDR4 / 512GB SSD
- GYÖNYÖRŰ iPhone SE 2020 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3291
- Samsung Galaxy Tab S8 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- iKing.Hu - Google Pixel 10 Tensor G5, 120 Hz OLED, tripla kamera-128 GB Használt, karcmentes Gari
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest