Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: Kokemukset ohjlmointikielistä

Sivun loppuun

TeeVee [05.11.2002 21:04:25]

#

Haluaisin kommentteja eri ohjelmointikielistä. Web-kielet(php, javascript, java) jää pois. Haluaisin että mahdollisimman moni kertoisi kokemuksiaan eri kielistä. Oli sitten kyse asmista, Visual Basicista tai jostain muusta. Plussat sekä miinukset mukaan!

Gevil [05.11.2002 22:17:05]

#

Hmm.. itse en pitäisi tälläistä lähestymistapaa hyvänä kielen valinnassa. Eri ohjelmointikieliähän syntyy juuri sen takia, että ne suunnitellaan johonkin tiettyyn tarkoitukseen (jotkin on suunniteltu enemmän 3d-grafiikkaan pohjautuen jotkut taas windowsin pikku-ohjelmien räpellykseen ja niin edelleen). Toki löytyy poikkeuksia jotka yrittää olla se paras kieli kaikkeen tarkoitukseen, tämä ei kyllä käytännössä ole mahdollista, jostakin on karsittava. En selitä tämän enempää, vaan esitänpä kysymyksen:

Minkälaista projektia varten etsit ohjelmointikieltä? Minkä tyyppisiä ohjelmia aiot tehdä jatkossa, kyseisellä kielellä?

thefox [05.11.2002 22:23:06]

#

Tekisi kyllä mieli tietää kieli joka on varta vasten suunniteltu 3D-grafiikkaan (Blitz3D:tä ei lasketa ;) Joka tapauksessa C++ sopii lähes kaikkeen.

Gevil [05.11.2002 22:27:19]

#

C++ sopii kaikkeen, lähes, mutta siis idea tuossa kommentissani oli siis se että se ei kaikkeen ole paras. Vaan parempi kieli on se joka on varta vasten sille suunniteltu. Suoraan sanottuna en tiedä mikä on suunniteltu 3D-grafiikkaa ajatellen, varta vasten. Kuhan keksin pari esimerkkiä, että mitä hain takaa.

Niin ja teevati, olennainen kysymys on myös haluatko ohjelmoida helpomman kautta, nopeuden kustannuksella (korkeantason kielet) vai sitten vähän tai vähän enemmän hankalammin, mutta voittaen nopeudessa (matalantason kielet).

Antti Laaksonen [05.11.2002 23:29:36]

#

No tässä tulee ensinnäkin niitä kokemuksia, nämä siis omien käytön/kokeilujen perusteella...

Assembly (kaikki järjestelmät)

Matalimman tason kieli, jolla tuskin kannattaa aloittaa. Ainakin ensin monet asiat tuntuvat melko käsittämättömiltä, mutta samalla kieli on erittäin nopea, oikeastaan nopein. Assemblyllä ohjelmointi on kuitenkin palkitsevaa - jos väkertää kauan monimutkaista ohjelmaa ja se toimii viisi kertaa nopeammin, kuin alkuperäisellä kielellä tehty voi olla tyytyväinen tulokseen.

+ erittäin nopea (nopeus riippuu ohjelmoijasta)
+ mahdollisuus tehdä mitä vain (jos on todella taitava)
- aloituskynnys on korkealla
- ohjelmointi on aikamoista pakertamista
- joka prosessorille joutuu opettelemaan oman konekielen

C++ (useimmat järjestelmät)

Tällä kielellä saa aikaan lähes mitä tahansa, ja useimmille koneille ja käyttöjärjestelmille löytyy C++-kääntäjä. Kieli ei ole siis suotta ohjelmoinnin ammattilaisten suosiossa. Aloittelijalle kieli on melko vaikea, mutta kuitenkin opetteleminen on mahdollista, jos käsillä on kunnon opas.

+ nopea ja tehokas
+ kääntäjä löytyy useimmille järjestelmille
- vaikea kieli hallita hyvin
- monet asiat on tehtävä hankalammin, kuin toisissa kielissä

QBasic (DOS)

QBasic on ehdottomasti suosikkikieleni, vaikkei sillä mitään vakavissaan kannatakaan ohjelmoida. Kieli sisältää todella monipuolisen komentokokoelman - mutta on nykymielessä tuhottoman hidas. Aloittelijat saavat QBasicilla aikaan helposti toimivia ohjelmia, mutta kokeneellekin ohjelmoijalle on tehtävää, jos kielestä haluaa saada kaiken irti.

+ erittäin yksinkertainen mutta samalla monipuolinen kieli
+ saavuttanut legendaarisen maineen
+ ilmainen (käytännössä)
- hidas ja pieni kapasiteetti
- opettaa huonoja ohjelmointitapoja (joista kuitenkin päässee helposti eroon myöhemmin)

Visual Basic (Windows, DOS)

Sana "Basic" nimessä ei tarkoita, etteikö Visual Basicilla voisi tehdä suuriakin ohjelmia. Tällä hetkellä minulle lähes "täydellinen" kieli, sisältää kuitenkin edelleen Basicin sudenkuoppia, joiden ansiosta ohjelmasta voi tulla todella sekava ja hidas.

+ helppo oppia ja käyttää, kaikki on hyvin loogista
+ laajojen ja monimutkaisten ohjelmien tekeminen mahdollista
+ mahdollisuus WinApi:n ja DLL-lisäkirjastojen käyttöön
- melko kallis
- Basicin heikkouksia edelleen
- joistain piireistä sinut saatetaan nauraa ulos jos kerrot ohjelmoivasi VB:llä

Muilla kielillä en sitten kovin paljon ole ohjelmoinut. Tällä hetkellä eniten kiinnostaisi C#:n kokeileminen, kieli kun kuulemma yhdistää C++:n ja Basic:in parhaat puolet - mutta niin kauan kuin en kääntäjää omista, testaaminen ei oikein onnistu...:/

Mutta sitten...

Ei kannattaisi miettiä liikaa, minkä kielen valitsisi. Aloittelijan kannattaa valita sellainen kieli, joka omasta mielestä vaikuttaa mukavalta, ja jolle löytyy tietoa Internetistä sekä samalla kielellä ohjelmoivia, joilta voi välillä kysyä neuvoa. Hyviä valintoja tänä päivänä ovat ainakin C++, Delphi ja VB.

Jos ohjelmointia kaavailee ammatiksi, silloin on kuitenkin käytännössä osattava suurin osa tärkeimmistä kielistä ainakin jollakin tapaa. Kukaan ammattilainen ei voi ohjelmoida pelkästään C++:lla tai VB:llä. Siinä mielessä ei ole niin väliä, minkä kielen nyt ensimmäiseksi valitsee.

juhaz [06.11.2002 08:21:33]

#

No sanotaan nyt ihan vaikka se Blitz3D (WIN)
+Helppo kuin quickbasic ja todella tehokas kieli
Pääsee samaan tulokseen vähemmällä tekemisellä kuin jollain c/c++ voisi päästä
+Joku sanoi, että se olisi jopa basiceista nopein..... itse en tiedä, mutta laitan tähän

Miinuksia en vielä tiedä koska en ole vielä niin pitkälle edes perehtynyt, mutta kyllä tuo eroaa kuitenkin quickbasicista, mutta kyllä se opettaa niitä goto käskyjä kirjoittelemanaan.


"Blitz is an easy-to-use, yet powerful and flexible programming language designed for the sole purpose of writing slick, playable videogames!

Whether you want to create action packed 3D games, 2D puzzlers, adventures, RPGS, whatever...Blitz can do it!

Blitz is available in 2D only (Blitz2D) and 2D/3D (Blitz3D) versions. Blitz3D adds a bunch of powerful 3D commands to Blitz2D's command set, while remaining as user-friendly as its 2D counterpart.

Blitz is based on the popular BASIC programming language. BASIC is well known for being both easy to learn and to use, making Blitz ideal for beginners and more experienced programmers alike.

Blitz is also a 'compiler'. This means that your programs are converted into ultra-fast machine code before being run for maximum game speed!"

http://www.blitzbasic.com/Blitz/about.php

Blitzbasic/Blitz 3D:n komennot löytyy osoitteesta:
http://www.blitzbasic.com/blitzdocs/docs.php

Blitz2D/3D features:
http://www.blitzbasic.com/Blitz/features.php


Keskeneräisiä projekteja mitä on kait BB:llä tehty:
http://blitz.idigicon.com/home.asp

Muistakaa painaa sitten sitä projects linkkiä :D

TeeVee [06.11.2002 12:48:03]

#

En ole välttämättä opettelemassa uutta kieltä, mutta uteliasuutta kysyin..

TeeVee [06.11.2002 14:06:02]

#

Hups, en ajatellut loppuun saakka. Haluan kommentteja vielä lisää, mutta katselen, mikä kieli kiinnostaisi.

Gevil [06.11.2002 15:55:01]

#

Sulle ei siis vielä selvinnyt minkä tyyppisiä ohjelmia haluat väkertää? Oleetetaan että et osaa mitään kieltä (tai ainoastaan parin kielen perusteiden perusteet), niin minä voisin suositella Visual Basicia.

pushpabon [06.11.2002 16:58:07]

#

Entäs PASCAL? Onkos se kokonaan unohdettu, tai fortran, cobol, yms yms. Kieliähän on monenmoista :D. QB on ihan kätsy vaikkei sillä mitään half-lifeä väsätäkkään.

Antti [06.11.2002 17:10:51]

#

Pascal on Delphin alkumuoto... esi-isiemme muinainen ohjelmointikieli, Cobolin kanssa samaan aikaan kehitetty...

Noh kukaan ei varmasti muista sellaista ohjelmointikieltä kuin Easytalk, joka on basicin esi-isä...

Vain vanhat mainframe parrat enää tarvitsevat noita muinaisia kieliä - sama asia kuin alkaisimme opettelemaan muinaisten sumeerien kieltä... kukaan ei enää juurikaan sitä osaa - eikä edes halua osata ;) Jos haluat opiskella, niin siitä vaan - löydät varmaankin mielenkiintoisempiakin kohteita....

PS. Olen itse vuonna -83 opiskellut juuri pascalia ja fortrania sekä ohjelmoinut niillä -84-85 CP/M ja IBM 610 suurkone-ympäristössä ...

TeeVee [06.11.2002 19:20:23]

#

lainaus:

Sulle ei siis vielä selvinnyt minkä tyyppisiä ohjelmia haluat väkertää? Oleetetaan että et osaa mitään kieltä (tai ainoastaan parin kielen perusteiden perusteet), niin minä voisin suositella Visual Basicia.

C++ on ainoa kieli mitä osaan, sitäkin ihan kohtalaisesti.

Gevil [06.11.2002 20:14:19]

#

Teevati, jatka sitten vain sitä C++ opettelua. Rinnalla toki voit alkaa tutustumaan muihinkin kieliin.

Onko täällä muuten ketään joka taitaisi Eiffeliä? Yliopistolla siitä ovat puhuneet, mutta itse en ole sitä päässyt testaamaan. Minkälainen on siis Eiffel-ohjelmointikieli?

Vilikki [06.11.2002 21:28:13]

#

Olen kuullut eiffelistä, mutta en muista sen tarkemmin...

mikko [06.11.2002 21:38:23]

#

Gevil: http://www.wikipedia.org/wiki/Eiffel_programming_language

Gevil [07.11.2002 16:27:22]

#

mikkot, kiitoksia linkistä. Tuo wiki on näköjään jonkin sortin sanakirja/tietosanakirja?

Tuon kyseisen linkin kautta löysin Eiffelin kotisivut (eiffel.com ylläri ylläri :) ja huomasin että Eiffelistä on pari ilmaistakin versiota saatavana. Yksityiseen käyttöön, lisenssin määräaika ei kuitenkaan pääty koskaan. En sitten ole ihan varma onko tuo rajoitetumpi versio kuin maksullinen ja kuinka paljon, mutta jos jotakuta kiinnostaa ladata tuo Eiffelin kehitysympäristö:

http://www.eiffel.com/downloads/

TeeVee [07.11.2002 18:54:44]

#

lainaus:

Teevati, jatka sitten vain sitä C++ opettelua. Rinnalla toki voit alkaa tutustumaan muihinkin kieliin.

Tälläiset aikomukset minulla on ollutkin.

Gix [29.03.2003 21:24:49]

#

Eikös nyt ole tullut joku Cg kieli joka helpottaisi grafiikan tekoa. En ole asiasta varma, mutta se vois olla aika hyvä. Mutta mielestäni C++ on ainaki hyvä :D

Teme [07.04.2003 21:26:52]

#

C++ on vaikeeta, Visual Basic on helppoa ja sen oppii helposti. Vaikka mieli tekisi kyllä opetella C++ mutta kun se on niin hemmetin vaikeeta... :(

Gix [07.04.2003 22:34:11]

#

C++ on kyllä kohtalaisen vaikeata, mutta minun ongelmani on ku en saa sillä käännettyä, ku tulee aivan erroria... Visual Basicilla en oo paljoa tehnyt, jonkin verran Delphillä ja qbasicilla. Mä en saa Visual C++:lla käännettyä siis, mutta Borlandilla kyllä onnistuu.

arcatan [08.04.2003 14:51:08]

#

Delphi / Object Pascal
-------------------------------------------

Ah, minun ykköskieleni Windowsilla. Ryhdyin käyttämään tätä itse asiassa sen takia, että sain ohjelman MikroBitin CD:n mukana (Delphi 2, ja kyllä minä sitä sitten käytinkin monta vuotta, sitten Delphi 3:sta ja nyt tänä vuonna Delphi 6)ja MikroBitissä on ollut sille tutoriaaleja.

Delphihän ei ole ohjelmointikieli vaan IDE kielelle nimeltään Object Pascal, joka on sama kuin Pascal, paitsi että siinä on käytettävissä oliot. (Varmaan vähän sama suhde kuin C ja Object C tai jopa C++)

+ Kieli on helppo
+ Helppo tehdä Windows-ohjelmia nopeasti
+ Tietokantaominaisuudet on hyvät
+ Paljon ilmaisia komponentteja
+ Yksityiskäyttöön on saatavilla ilmaisia versioita (Ainakin Borland Delphi 6)

- Ohjelmat ovat isohkoja
- Ei kauhean yleinen
- Joissain piireissä huono maine.
- Välillä voi olla aika epästandardi WinAPI :n suhteen, jos käyttää VCL :lää (minulla oli aika kova homma soveltaa tuo Laaksosen sprite-oppaan VB-esimerkki käytäntöön, mutta täytyy sanoa että toimii hyvin)

Delphi on mielestäni hyvin samantyyppinen kuin Visual Basic. Kummallakin voi kehittää nopeasti Windows-ohjelmia. Suosittelen sitä VB:n vaihtoehdoksi.

Minua kiinnostaisi tutustua Delphin sukulaiseen Kylixiin.

Vilikki [08.04.2003 15:17:54]

#

Darkbasic:
+pääsee helposti ohjelmoimaan 3d-grafiikkaa (directx)
+aika helppo oppia, kuten muutkin basicit
-ei ole ilmainen

darkbasic-ohjelmoinnista on sen verran pitkä aika, etten kyllä paljon siitä muista...

Gix [08.04.2003 15:51:46]

#

Delphi on aika hyvä kieli sinänsä, koska jos ei halua basic kielellä ohjelmoida esim. VB, niin Delphi on hyvä vastine.
Delphi on melkein kuin VB, mutta tietenkin eri kieli.

Itse en pahemmin Delphiä osaa, ehkä jotain alkeita nyt, mutta en sen enempää. Se on kyllä aika helppoa.

HtH [08.04.2003 21:09:15]

#

C/C++ on varmaan ainoa ohjelmointikieli, jota kannattaa isoissa projekteissa käyttää, ainakin PC:lle :)
nämä muut assemblyt sitten ovat enemmän sellaisia kieliä, jos tahtoo tehdä kaiken vaikeasti, taikka sitten tyylillä :) Mutta esim. c64:lle nopeaa(, tai ainakin niin nopeaa kuin c64:llä saa :) ohjelmaa halutessaan ainoa vaihtoehto oikeastaan on assembly.
mitä basicceihin tulee, en suosittele niitä laisinkaan, edes aloittelijoille, vaikka siitä olisi kuinka helppo aloittaa, mutta itselleni ainakin tuli paljon vääränlaisia ohjelmointitapoja niistä kielistä.
vielä vähemmän pidän näiden darkbasic räpellyksien puolta, raskasta jälkeä niistä tulee, ainakin yhtä darkbasic peliä pelasin, ruudunpäivitys sitä 1 f/s luokkaa, vaikka peli ei kovin kummoinen ollutkaan :)

kannattaa kuitenkin itse löytää kokemuksen kautta jokaisen kielen hyvät tai huonot puolet, niin osaa hyödyntää tietojaan parhaiten :)

Olli Vanhoja [10.04.2003 21:06:12]

#

C++ ja Assebly jyrää!

Jesoft [12.04.2003 23:29:52]

#

Voi apua!
olenko ainoa joka tietää mikä on Clipper?

Vilikki [14.04.2003 20:41:23]

#

Clipper? En ole itse kuullutkaan... ;-D

Heikki [19.04.2003 20:43:16]

#

En minäkään...

Tässä oma mielipiteeni parista osaamastani kielestä:

QB:

Erittäin helppo oppia perusteet, mutta riittä uutta opeteltavaa pitkäksi aikaa. Ehkä suurin miinus on se, että tuottaa DOS-ohjelmia, joita käytännössä kukaan ei halua käyttää. Aloittelijalle sopii jopa minun mielestäni (syy on kai se että en paljon muita kuin basiceja ole käyttänyt..)

+Helppo
+Ilmainen
+Aloittelijalle (varauksin)
-Hidas
-DOS
-"Haha... tyyppi käyttää QB:tä!!!1"

VB:

Modernisoitu QB. Perusteet helppo oppia, mutta kuitenkin kohtalaisen laaja (jopa 3d directX:llä muistaakseni). Windows-ohjelmia helppo tehdä. Käytän tätä itse pääasiassa.

+Helppo
+Kohtalaisen nopea (kun verrataan esim. QB:hen)
+3D
+Sopii aloittelijoille (varauksin)
-Vain Windows
-Basic (=huono maine joissain piireissä)

C++:

Hyvä kieli jos jaksaa opetella. Itse en jaksanut, vaan jätin opettelun miltei heti, joten en laita plussia/miinuksiakaan...

Tuo varauksin tarkoittaa sitä, että saattaa opettaa huonoja ohjelmointitapoja. Valaiskaas joku minua, mitä muita huonoja ohjelmointitapoja on kuin GOTO? Ja kyllä QB:llä ja VB:llä tekee hyvin ilman GOTOakin...

Jesoft [20.04.2003 16:29:28]

#

Mitä Qbasisicissa on naurettavaa?

QuickBasic:
-----------
+Helppo
+Ilmainen
+Suomenkielinen versio
+Aloittelijoille
+Tarpeeksi käskyjä

-DOS

C/C++/Turbo C++
----------------
+Yleinen
+Haastetta
+Sillä voi tehdä lähes mitä vain

-DOS
-Haastetta
------------------------------------------------------------

Vilikki [20.04.2003 16:46:59]

#

Jesoft, kaikki c++ kääntäjät eivät ole pelkästään dossille...

Olli Vanhoja [20.04.2003 21:04:31]

#

lainaus:

Clipper? En ole itse kuullutkaan... ;-D

Mikäs se sitten on???

HtH [26.04.2003 18:44:51]

#

Jesoft: ensinnäkin C, tai C++ on helppo kieli, ainakin perusteet on helppo oppia. Monet pitävät sitä/niitä vaikeana ehkä lähinnä sen takia, koska se eroaa niin paljon siitä Basicista(no ei oikeastaan niin hirveän paljon), jonka pohjalle omat ohjelmointitottumukset on saatettu rakentaa.
Olen jopa käytännössä saanut todistettua tämän; toinen kavereistani opetteli Basicin, ja toinen C++:n ensimmäisenä kielenään. (kummatkin siis minun toimesta :) Kumpikin oppi ensimmäisestä kielestänsä perusasasiat(luupit ja iffit ja tekstin tulostamiset jne.) nopeasti. Tämän jälkeen kehoitin Basic-miestä opettelemaan C++:aa, tämä kieli tuntui hänestä äärimmäisen vaikealta.
En nyt sano tuota absoluuttiseksi totuudeksi, mutta näin voi asiat hyvinkin olla :)

Lisäksi, Jesoft Basicillakin voi saada ihan mitä vain aikaan, mahdollisuudet kuitenkin riippuvat lähinnä vain kääntäjästä.
Heikki: 3D:tä voi kyllä ohjelmoida ihan millä kielellä vain, ainakin myös muilla ympäristöillä kuin VB:llä.

Ja vielä lisäksi sitten kysyn että mitäs miinusta se DOS sitten tuo? Eipähän tarvitse huolehtia Windowsin tarpeista ja koodaus onnistuu muutenkin matalammalla tasolla :)

tomaattigeeni [29.04.2003 19:36:06]

#

lainaus:

QuickBasic:
...
+Tarpeeksi käskyjä

Varmasti "tarpeeksi" ainakin alottelijalle, mutta voihan niitä "käskyjä" tehdä itsekin (siis funktioita) ;)

lainaus:

C/C++/Turbo C++
+Yleinen
...
-DOS

Kummasta siis puhut, C++:sta yleisesti vai Turbo C++ kääntäjästä? ;)
Toi Turbo cpp kääntäjä ei mun mielestä oo mitenkään "yleinen", sen verran ajastaan jäänyt. C++ taas ei ole mitenkään sidottu DOS:iin.

Toni-S [29.04.2003 21:48:03]

#

Itse suosin Assemblyä ja C:tä.

ASM

+ Nopeus
+ Helppo oppia (uskokaa tai älkää.. kieli on hyvinkin looginen ja yksinkertainen)
+ Pystyy linkkaamaan yhteen C koodin kanssa.. (ainakin nasmilla, muuta en edes käytä)
+ Laiteläheisyys

- Ei sovellu kovin pitkiin projekteihin / ohjelmiin
- Siirrettävyys arkkitehtuureilta toiselle voi olla joskus todella tuskaista

C

+ Nopeaa koodia
+ Siirrettävyys
+ Helppo oppia (joskin vaikeampi kuin ASM)

- nojaa.. mitähän tähänkin laittaisi... ;)

Siinä nyt suurinpiirtein minun mielipiteeni.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta