Jump to content

Kā sākt programmēt?


Gatis33
 Share

Recommended Posts

Inspektors Caps

mezhaveci, protams, ja cilvēks lietām pieiet ar izpratni, tad uztaisīs visu ko. Ar COM portu gan neredzu kur varētu būt kāds baiss čakars. Ja nu vienīgi hardwaram ir izcili debils protokols vai esošais kods, kas jāpapildina, ir tizli veidots. Un pričom te USB? Kāda starpība kāds interfeiss? Bez draiveru rakstīšanas arī uz USB Tu vari izmantot tikai USB standarta hardware klašu iekārtas, starp kurām ir arī COM porta emulators, kas ir gandrīz vienīgais ko Latvijas bāleliņi spēj izmantot. Un kodējot softu, kas strādā ar USB no C#, Tu nedabūsi labu performanci - būs gan mazi ātrumi, gan lieli aiztures laiki. Rezultāts atkal bieži sanāks tāds pasūdīgs štrunts, ar ko nekur tālu netiksi. Nerunājot par to, ka custom USB devaisiem vajag custom draiveri, ko C# vispār reāli nevar uztaisīt.

 

Naudu gan nepelna ar valodu, bet gan ar līmeni! Naudu pelna visi - C, C++, C#, Visual Basic, Delphi, Java, PHP u.c. koderi. Savukārt slikts koderis var kodēt kādā valodā grib, tāpat neko nenopelnīs kamēr necels savu līmeni.

 

tt2t, Delphi komponentes lielākā daļa ir vienkārši atbaidošas kvalitātes. Windows tēmu atbalsts vēl būtu sīkums. Bet, piemēram, Unicode neatbalsīšana ir vienkārši nonsenss! Savukārt jauno uz .NET bāzēto Delphi vienkārši nav nekādas jēgas izmantot. Tā IDE ir vienkārši sliktāks Visual Studio pakaļdarinājums, pie tam, ja nemaldos, dārgāks. Plus vēl C# valoda tomēr ir ērtāka par Object Pascal.

 

Par bubu... viņš jau ir viens no tiem izņēmumiem, kas, kā saka, tikai apstiprina likumsakarības! :D Un tad jau kolēģi noteikti viņam ir līdzīgi. Bet cik tādu cilvēku Latvijā ir? ;)

 

_snoop_dogg_, vārdu "savādāks" raksta ar K nevis G! ;) Bet par tēmu.. C un C++ (tās ir divas valodas!) rakstāmais kods atšķiras no Pascal bet princips, ko darīt, ir identisks. Vistuvāk Pascal patiesībā ir C, ar ko arī iesaku turpināt pēc Pascal un tad lekt uz citām. Piemērs, identiskam kodam abās valodās, kas Tev jau tagad būs saprotams..

 

Pascal kods:

begin
    x := 7;
    Writeln('Hello, World!');
end.

C kods:

{
    x = 7;
    printf("Hello, World!");
}

Labots - Inspektors Caps
Link to comment
Share on other sites

(labots)

Paldies, pirmo jāizurbj tas pats pascal :)

Paldies visiem ka palīdzējāt man ijiet programētāju pasaulē :) !!

Labots - Leshij
nenoturējos :P
Link to comment
Share on other sites

Inspektors Caps

Tur nav galvēnais, kur zīmēt, via kā zīmēt. Galvēnais ir iemācīties algoritmizēt.

 

Leshij, Tev savukārt pateikšu, ka vārds "galvenais" ir ar īso E. ;) Tas nav uzbrauciens, tikai informēju, jo, pēc nicka spriežot, liekas, ka latviešu valoda varētu arī nebūt dzimtā. :)

Link to comment
Share on other sites

Man programmēšana saistās ar algoritmu implementēšanu, domāšanu.

Grafiskās figņas (podziņu, formiņu stumdīšanu, pikseļu bīdīšanu) labprāt vispār atstātu mākslinieku ziņā, kam uz to ir ķēriens.

Tādēļ atkārtošos, ka man vislabāk patiktu sākt mācīties ar kaut kādu vienkāršu uzdevumu pildīšanu tajā pašā vecā konsoles modē (vai vienalga kādā), risinot, piemēram, http://www.lio.lv/olimps/uzdevumi.php .

 

Edit: Un kaut kādas papildus zināšanas jau nāk ar laiku, vai tur kāds interfeiss jāizmanto, vai kāda iekārta, vai kas. Izlasām API un drukājam kodu.

Labots - japets
Link to comment
Share on other sites

Piekrītu tiem kas teica ka pirmkārt, jāiemācās algoritmiski domāt un tikai tad ir jēga no tām visām grafiskajām funkcijām utt., bet arī piekritīšu ka "melnie" logi iesācējus bieži atsit, ja ne pirmajā dienā, tad pēc pusotras nedēļas. Pirms 10 gadiem tiešām tas bija savādāk, cilvēki nemaz nepazina tās grafiskās iespējas, bez kurām mūsu ikdiena šobrīd nav iedomājama, attiecīgi toreiz arī par konsuli priecājās.

Mani personīgi, Pascal/Delphi atsita tieši ar to pieraksta veidu, THEN BEGIN... utt. C/C++ domāju ka ir pietiekoši optimāls, ar ko sākt un arī turpināt programēšanu (ja cilvēks ar to domā ari turpmāk nodarboties), ja būs vajadzība tad nedēļas-mēneša laikā var iemācīties citas valodas sintaksi, galvenais ir iemācīties pirmo un saprast pamatus, izņēmums - Assembler :D

No personīgās pieredzes ļoti grūts punkts mācoties programēšanu - OOP, kuru šodien visiem skaidro kā neizbēgamu ik katrā mazākajā programā. Bieži tie objekti ir bezjēdzīgi jo pieprasījums uz attiecīgu klasi nebūs vairāk kā 1 reizi - kāda tam jēga? Labprāt dzirdētu Jūsu domas par OOP pielietojumu mazajās programās.

Link to comment
Share on other sites

Mani ieteikumi autoram _snoop_dogg_:

  • Pareizi ir, sāc ar Pascal.
  • Izmanto nevis veco Turbo/Borland Pascal, bet gan mūsdienīgo FreePascal. Neiedziļinoties sīkumos, tas Tev atvieglos daudzas lietas (piemēram, varēs taisīt lielus masīvus, kad līdz tam nonāksi). Un programmas strādās zem Windows, nevis DOS. Un ies arī uz Vistas/Win7. U.t.t. :)
  • Lai arī es piekrītu visam tam, ka pamatā ir algoritmiskā domāšana, blokshēmu zīmēšanas spēja, u.t.t., man tomēr škiet, ka sākuma apgūšanai šāda pieeja nav īpaši ērta. Kad es pats sāku programmēt pirms vairāk nekā 10 gadiem, tad es par programmu domāju kā par "pēc kārtas uzrakstītām komandām". Vienkārši uzraksti vairākas komandas vienu pēc otras, un dators viņas tādā secībā arī izpildīs. Tad tik jāapgūst komandas. Pa vidu tika arī apgūtas tādas komandas kā if, kas ļauj blāķīti ar komandām izpildīt tikai pie konkrētiem nosacījumiem; un for/while/repeat, kas ļauj blāķīti ar komandām izpildīt vairākas reizes. Es iesaku apgūt programmēšanu komandu pa komandai, jēdzienu pa jēdzieniņam. Kad kaut ko jaunu izlasi, neliecies mierā, pirms neesi pats to izpratis un iemēģinājis palietot.

Link to comment
Share on other sites

Tieši tādēļ iesaku internetā atrast to "Hello world!" grāmatu - tur viss ir ļoti userfriendlī un no pamatupamatiem aprakstīts.

Link to comment
Share on other sites

  • 4 weeks later...

manuprāt, Pascal kā pirmā valoda sūkā ledu un nps neder pašdarbībai. NPS ir morāli novecojis.

 

Es sāku programmēt 14 gados un principā aiz iemesla, ka tas šķita interesanti utt. Viena no lietām, ko man vajadzēja - rezultāts kā motivējošs faktors. Atceros, ka es Pascal un NPS "pametu" pēc 2 nedēļām, jo Ckaut ko konsolē taisīt šķita baigais oldschools un no fun.

 

Pameklējos lielajā draugā internetā un sāku ņemties ar PHP, vācot brīvi pieejamus skriptus un viskautko modificējot. Tad vismaz man izdevās vienā vakarā uztaisīt kaut ko tādu, kas pašam patīk. Tā nu lēnām radās sajēga gan par OOP, gan par SQL, gan par datu tipiem, gan par masīviem, gan par visu citu. Piemācoties JS radās rudimentāra sajēga par funkcionālo programmēšanu.

 

C++ esmu kodējis, tik cik uni vajadzēja, bet C sāku lietot aptuveni ap to pašu laiku kad uzliku sev linux, jo dikti gribējas kaut ko open sourcīgā softā uztaisīt pa savam.

 

Ja es tagad gribētu sākt programmēt darītu tā pat, tikai php vietā ņemtu python - valoda tīrāka, ērtāka un radina kārtot kodu. Bibliotēkas principā ir visam. Tas man python patīk - ir ideja par kuru neko nejēdzam, atrodam googlee libu, izmantojam jamo un ātri uztaisam protipu, pēc tam jau extendojot un labojot libu un tā arī iegūstam sajēgu.

 

Atbildot tam, kas pret high-level valodām runāja - es arī agrāk spēlējos ar embedded sistēmām + C. Tiesa, prasa arī engineering skillu, lai to iegulto sistēmu uztaisītu.

Link to comment
Share on other sites

Kā es sāku, (sāku nesen) pirms 4 mēnešiem, mērķis bija uztaisīt mājas lapu, domāju ka nekad neierubīšos, vēl joprojām daudz ko nesaprotu, bet nu mājas lapu kautkādu uztaisījis esmu, nu labi tas ir templates

 

Ko varu ieteikt no nesenās pieredzes, ja gribi programmēšanas ietvaros gribi uztaisīt mājas lapu:

 

1) Iesaku bezmaksas reģistrēt domēnu www.nic.lv www.nosaukums.id.lv

 

2) Paņem hostplex bezmkasas serveris www.hostplex.eu

 

3) Paņem template no http://www.oswd.org/ , mājas lapu taisu FrontPage, bet labāks ir adobe dreamweaver

 

Eksperimentē ar gataviem kodiem - http://www.w3schools.com/html/html_scripts.asp un kopē template skaties

, kas notiek

Bez gļukiem jau neiztikt tajā visī

 

Lai gan tas ir nogurdinoši, bet bez google wikipēdijas lasīšanas neiztikt

 

Tas man tāds iesācēja "padoms" iesācējam, bet nu protams tajā visā ir informācijas okeānc, kurš ir jāapgūst

Link to comment
Share on other sites

Inspektors Caps

O, nu jau HTML bakstītāji uzskata, ka viņi programmē. Kas būs tālāk?

 

andrai2, HTML bakstīšanai nav nekāda sakara ar programmēšanu.

 

 

Link to comment
Share on other sites

Es gan uzskatu, ka PHP ir iesācējam kaitīga valoda, kas vedina slikti programmēt un "taisa mazus dumjus pēhāpistus".

Link to comment
Share on other sites

Lai gan esmu tiko sācis mācīties programmēt (1. kurss:declare:), pagaidām māca C++, zin, es neteikšu, ka tā konsule mani atbaida. Pagaidām tā parāda manu līmeni, un esmu apmierināts :) Ja es to pašu uztaisīšu smuku un vizuālu - vai tādēļ es jutīšos labāks koderis ?

Link to comment
Share on other sites

Inspektors Caps

Es domāju līdzīgi kā japets - doma, ka sāks ar PHP, un pēc tam vēlāk izaugs līdz īstai programmēšanai, ir tāda pati kā sociālisms - nestrādā dēļ cilvēka slinkuma.

 

wish, viss ir normāli, tikai turpmāk raksti "konsole", nevis "konsule". ;) Iemācīties PROGRAMMĒT sākumā ar konsoli ir pat vieglāk.

 

 

Link to comment
Share on other sites

Mezavecis

Nevajag jau ieslīgt galējībās. PHP ir vienkāršs, ka ātri var dabūt redzamu rezultātu. Protams, veids gan pieklibo.

 

Esmu saticis vairākus, kas sākuši programmēšanas cīņu ar PHP un ir 2 tipi:

- turpina PHP taciņu tādā pašā garā un neuzskata par vajadzību attīstīties. No tiem vairums ir arī tie slinkie pēhāpisti.

- secina, ka php nav īsti laba valoda un pievēršas kaut kam nopietnākam.

 

Pēc šo cilvēku pieredzes, pārejas periods nav nemaz ilgāks kā Pascal rubinātājiem, kuri vairāk par melnajaiem/zilajiem logiem programmēšanā nav redzējuši.

 

Lai nu kā javascript, php, asp, jsp utt, nav pilnīgas aplikāciju veidošanas valodas un vienmēr kaut kas pietrūks. Svarīgāki ir principi, nevis konkrētas valodas zināšana.

Link to comment
Share on other sites

  • 2 years later...
Maris123

Labdien!

 

Arī man ir radusies vēlēšanās kļūt par programmētāju. Ir pieredze ar PLC programmēšanu (zinu Siemens Step7 un STL valodu). Gribu iemācīties izveidot vienkāršas izpildāmas programmas windows vidē, darboties ar RS-232 u.c., izveidot elementāras datu bāzes (nolasīt datus no 232 vai cita savienojuma iekārtas un tos apstrādāt). Kā tas notiek Step7 zinu, bet tur delžiem ir nepatīkamas cenas, un priekš kam siltuma skaitītāju laist caur PLC, ja var nolasīt pa tiešo, caur RS-232.

 

Pārlasīju citus topikus, bet īstu skaidrību neguvu. STL ir būvēta uz C++ bāzes, tātad kautkāda nojausma par to ir, bet tauta runā, ka C++ ir sarežģīts. Itkā labs sākumam ir pascal, bet vai viņš strādā ar portiem? Ar PLC programmēšanu viss ir vienkārši - samet kastē vajadzīgos dzelžus, pievieno perifēriju un ar standarta algoritmiem (funkcijām) liec tam visam strādāt. Tad ar ko sākt?

 

Paldies.

Link to comment
Share on other sites

Pascal ar portiem arī strādā, un tur var izdarīt visu, ko vien vēlies. Skyrim arī var uzrakstīt, ja grib. :)

 

Ja gribas ko mūsdienīgāku, vari pamēģināt C#. Arī tur pie portiem var tikt klāt. :)

Link to comment
Share on other sites

Baigais Janka

Ja gribi ne tikai priekš sevis kašāties, bet arī uz kādu nopietnu šanci ar bleķiem pretendēt, noteikti iesaku C. Katrā ziņā, ne še Latvijā, ne ārzemju prožektos, tā īsti neesmu redzējis ākstīšanos ar C++, ja runa par nopietniem dzelžiem iraid, jo iegūtais kods tomēr ir piedrazotāks pēc būtības, un C tu vari par galvas tiesu augstāk taimingus ievērot (protams, ne tik šerpi, kā assm, bet nu pamatmasu C nodrošina, tā kā assm šodien ir tikai ļoti kritiskās vietās).

Ja par windows - C & Windows API, vairāk arīdzan neko nevajag.

Link to comment
Share on other sites

Леший

Pascal ar portiem arī strādā, un tur var izdarīt visu, ko vien vēlies. Skyrim arī var uzrakstīt, ja grib. :)

Jā, to pat var uzrakstīt uz perfokartēm

ja grib

Link to comment
Share on other sites

Maris123

Ja gribi ne tikai priekš sevis kašāties, bet arī uz kādu nopietnu šanci ar bleķiem pretendēt, noteikti iesaku C. Katrā ziņā, ne še Latvijā, ne ārzemju prožektos, tā īsti neesmu redzējis ākstīšanos ar C++, ja runa par nopietniem dzelžiem iraid, jo iegūtais kods tomēr ir piedrazotāks pēc būtības, un C tu vari par galvas tiesu augstāk taimingus ievērot (protams, ne tik šerpi, kā assm, bet nu pamatmasu C nodrošina, tā kā assm šodien ir tikai ļoti kritiskās vietās).

Ja par windows - C & Windows API, vairāk arīdzan neko nevajag.

 

Cik es sapratu no profesionālo programmētāju valodas, tad WinAPI ir vide, kurā programmēt C++ valodā??? Tad atliek tikai nopumpēt to API un var sākt mēģināt?

Link to comment
Share on other sites

Nē, WinAPI ir funkcijas, ar kurām Tu vari "runāties" ar Windows. WinAPI funkcijas ir pieejamas dažādās programmēšanas valodās, tostarp gan C, gan C++. Teiksim tā, šīs funkcijas atrodas sistēmas .DLL failos, bet konkrētajā programmēšanas valodā vajag tikai izveidot "palīgfunkcijas" (aļa wrapperus), kuras neko citu nedara, kā tikai no DLL izsauc attiecīgo funkciju. Emm... kaut kā tā.

 

Ieteiktu par WinAPI sākumā nedomāt, bet paprogrammēt tā pat. :)

Link to comment
Share on other sites

Maris123

Nē, WinAPI ir funkcijas, ar kurām Tu vari "runāties" ar Windows. WinAPI funkcijas ir pieejamas dažādās programmēšanas valodās, tostarp gan C, gan C++. Teiksim tā, šīs funkcijas atrodas sistēmas .DLL failos, bet konkrētajā programmēšanas valodā vajag tikai izveidot "palīgfunkcijas" (aļa wrapperus), kuras neko citu nedara, kā tikai no DLL izsauc attiecīgo funkciju. Emm... kaut kā tā.

 

Tātad, man vajag kautkādu VisualBasic, Borland C++ vai kautko tamlīdzīgu, lai strādātu gan ar C++, gan arī API funkcijām?

Link to comment
Share on other sites

Mūsdienās WinAPI niša ir tikai taisot spiegu programmiņas un utilītas, taisot krakus citām programmām, lasot informāciju no sistēmas (lietotāja atvērtie faili utml).

 

Agrāk tas bija viens no retajiem veidiem, kā programmas sākt taisīt nevis tikai "melnajā logā", bet gan rādot lodziņus, paziņojumus, utml.

http://www.angelonline.net/CodeSamples/MessageBox.jpg - piemēram.

 

Bet nu jau vairāk kā 5 gadus ir populārs .NET, kas pilnībā visu to pašu dara DAUDZ ērtāk. Un GUI var sazīmēt un piedzīvināt daudz ātrāk.

 

Atbildot uz jautājumu - jebkurā standarta komandrindas kompilatorā ( MinGW, Borland C++ 5.5 ) ir iekļautas darbības ar WinAPI. Nevajag pat nekādu IDE speciāli likt- vajag tikai windows.h inklūdot (līdzīgs fails kā iostream.h ), un var sākt rakstīt. Es to savulaik darīju ar noutpadu, kompilējot programmas komandrindā.

Link to comment
Share on other sites

Maris123

Tad jautājums, kādu no standarta komandrindas kompilatoriem labāk izmantot iesācējam?

Link to comment
Share on other sites

Iesācējam ērtībai kaut kāda IDE noderētu ( auto-complete funkcijām, kompilēšana ar pogu, nevis .BAT failu vai komandrindu .. ). Bet ja gribi tikai žigli taisīt GUI un likt klāt vienkāršas funkcijas Windows vidē, tad C++ ne ar ko būtisku labāks par to pašu C# nebūs. Radniecīga sintakse un tā.

Tīrs C++ ir noderīgs embedētām sistēmām un citai eksotikai. Lietojumprogrammām neredzu C++ priekšrocības pār C#.

 

 

ar ko sākt? ar valodas izvēli - .NET kotēsies arī lietojumprogrammu izstrādē, bet CV pazīmēties, ka X gadu pieredze ar C vai C++ būtu noderīgāka, ja tēmēsi uz profesionālu dzelžu kodēšanu :>

Link to comment
Share on other sites

Baigais Janka

Es teiktu tā - Win API būtībā ir tīra vide - windows un tavas idejas, bez jebkādu trešo pušu šļurām :) Jā, GUI papildskaistumi no nekā nerodas, bet, ja pašam slinkums rakstīt, papildus bibliotēkas jau neviens tomēr neliedz izmantot.

A kompilatoru - es Tavā vietā ņemtu to pašu MS VS Express, kurš nu tur tagadiņās ir par velti pieejams un no MS nosūcams.

Link to comment
Share on other sites

ja girbas par visām varēm minimālismu, tad komandrindas kompilators ir ieteicams MinGW. Standartus pieprasošs. (borland pieļauj savas vaļības, dēļ kurām citur var šādi-tādi sīkumi nekompilēties bez labojumiem).

Klāt Code::Blocks IDE vidi ( vai Notepad2 redaktoru, ja gribas minimālismu ) un var sākt rakstīt pirmos Hello, World! un iepazīties, kas ir C++ ar WinAPI.

 

ja nav iebildumu pret IDE, tad Microsoft Visual C++ 2010 Express ir OK.

 

..un priekš kam siltuma skaitītāju laist caur PLC, ja var nolasīt pa tiešo, caur RS-232.

windows vidē?

Tīri ziņkārības pēc - gatavojies pie katra skaitītāja nolikt blakus datoru ar Win OS? Real-world vide ir tāda, ka uz visu māju ir kaudze skaitītāju, kurus centrāles pāris reizes mēnesī nolasa un ar GPRS/SMS/iezvanu tie tiek nogādāti uz serveri. Tipiski tur vindozi neatmaksājas nekur turēt :D

 

Pārlasīju citus topikus, bet īstu skaidrību neguvu. STL ir būvēta uz C++ bāzes, tātad kautkāda nojausma par to ir, bet tauta runā, ka C++ ir sarežģīts.

C++ nav tik sarežģīts kā to mālē. Neredzu būtisku atšķirību no Pascal. Asm - jā, tas gan ir sarežģīts.

Link to comment
Share on other sites

Maris123

Ja skaitītājs mājai ir viens, tad lētākais variants ir nolasīt viņu caur RS-232 pa tiešo uz datora, izmantojot kādu no OPC serveriem. Ja ir daudz skaitītāju, tad viņos ieliek modbus vai gsm moduļus ($$$), saslēdz pie modbus servera ($$$) un nolasa attālināti. Gandrīz katram skaitītāju ražotājam ir savs softs to nolasīšanai, darbojas gan windows, gan dos vidē. Tas atkal maksā $$$.

Tas vairāk tīri intereses pēc. Vai es varu uztrogrammēt to, par ko ražotājs prasa 600 Ls.

Link to comment
Share on other sites

aah, skaidrs :) ja komandu specene ir, tad jau tiešām reāli un var ņemties sporta pēc :>

Link to comment
Share on other sites

  • 4 weeks later...

1. Vispirms izdomā, kādu valodu tu gribi apgūt.

2. Kad esi izdomājis, kādu valodu gribi apgūt, pačeko youtube elementāros tutorialus, centies to pašu uztaisīt, to pašu pilnveidot utt... google ir ļoti daudz tutoriaļi kas tev palīdzēs apgūt vēlamo valodu.

3. Mans ieteikums ko mācīties - Java, C# vai PHP protams šīm visām valodām papildus nāk MySQL

 

Kā nekā šo valodu programētāji ir ļoti pieprasīti visā europā.

Link to comment
Share on other sites

Ko nozīmē: Mācīties MySQL? Query sintaksi? IMHO samērā vienkārša lieta, lai arī tik un tā nemāku. Mācītes vajag datubāzu veidošanu Vij mn gan videnē učūks, kas ielika pamatus, gan augstskolā učuks kas izspārdīja. Bet tas bija sen un nebija liela interese. Tāpēc uz vecuma marazmu fiškas, diemžēl, aizmirsās... A spārdīja ta MS Access tajos laikos. Iespārdīja to kā jāveido datu bāzes, qeary, tabulas, relations utml.

Link to comment
Share on other sites

Izveido kontu, vai pieraksties esošajā, lai komentētu

Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas

Izveidot jaunu kontu

Piereģistrējies un izveido jaunu kontu, tas būs viegli!

Reģistrēt jaunu kontu

Pierakstīties

Jums jau ir konts? Pierakstieties tajā šeit!

Pierakstīties tagad!
 Share

×
×
  • Izveidot jaunu...