Toon posts:

[c++] C++ en CGI, te doen?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hi

Ik heb vandaag een thuis-server werkend gekregen die zo'n beetje alles ondersteund (php/sql/perl/c++/javascript etc). Ik zal m o.a. gaan gebruiken om kleine cgi-programma's te programmeren/draaien. Nu heb ik eigenlijk meerdere dilemma's:

Ik heb een beetje ervaring met c++ en wil die ervaring uitbouwen. Maar moet ik wel kiezen voor c++? Ik krijg de indruk dat voor bijvoorbeeld Perl of Pascal veel meer cgi-documentatie te vinden valt... (veiligheid is geen pré)

Zo ja, welke IDE is het verstandigst om te gebruiken? Ik gebruik nu DEV c++ 5, maar ik ben bijvoorbeeld al uren zoet geweest met het hapklaar maken van mysql.h/libmysql.lib (-> compiled naar libmysql.a) voor de MinGW compiler. Ik heb gehoord dat deze problemen met Visual c++ uitblijven.

Bestaat er duidelijke beginners-documentatie voor libraries en headers die vereist zijn voor internet-apps in c++? Show me!! Ik kan het maar niet vinden.

Thanks!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 21-02 03:42
CGI zelf is simpel genoeg. Het lastigste aan CGI is dat je applicatie zelf allerlei webstandaarden (HTTP headers, cookies, urlencoding, form coderingen, enzovoorts) moet ondersteunen. Scripttalen als Perl en Python hebben daar vaak ook al modules voor, wat het programmeren een stuk eenvoudiger maakt. Voor C/C++ zijn er ook wel libraries (bijvoorbeeld CGIC voor C) die dit kunnen, maar het is soms even zoeken om de juiste libraries bij elkaar te vinden. Voor simpele dingen is Perl dus waarschijnlijk wat makkelijker.

Sowieso is het lastig om als beginnende programmeur met CGI te werken, omdat debugging vaak erg lastig is, omdat de webserver het proces start en je dus niet even makkelijk iets in een debugger kunt testen (is wel te regelen, natuurlijk, maar makkelijk is anders).

Wat de IDE betreft: dit is eigenlijk een hele andere discussie. Er zijn ook een heleboel topics op GoT te vinden over welke IDE's handig werken en er is zelfs een apart subforum voor development tools: Development Tools & Environments. Zelf zou ik zeggen dat Microsoft's Visual Studio Express Edition (die is gratis) wel geschikt is, maar ook dan ontkom je niet aan een dingen installeren en configureren (de Windows Platform API alleen al).

[ Voor 24% gewijzigd door Soultaker op 18-05-2006 23:04 ]


  • RoccoD
  • Registratie: September 2003
  • Laatst online: 19-09-2025
Ik zou niet de moeite nemen om een CGI applicatie in C(++) te bouwen. C(++) is zowiezo niet de ideale taal voor dit soort toepassingen. je moet erg uitkijken met je string handling e.d. Voor je het weet heb je ergens onder water een buffer overflow.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

RoccoD schreef op vrijdag 19 mei 2006 @ 09:02:
Ik zou niet de moeite nemen om een CGI applicatie in C(++) te bouwen. C(++) is zowiezo niet de ideale taal voor dit soort toepassingen. je moet erg uitkijken met je string handling e.d. Voor je het weet heb je ergens onder water een buffer overflow.
Mwah, de "echte" functionaliteit wordt door CGI geboden, dus ik zie niet waarom je niet elke willekeurige taal zou kunnen gebruiken. C en C++ hebben zo hun voordelen boven andere talen, en als je gewoon consequent netjes programmeert moet het geen probleem zijn.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • BoAC
  • Registratie: Februari 2003
  • Laatst online: 21-02 22:14

BoAC

Memento mori

En voor C/C++ zijn daar wel leuke libs voor te vinden:
Google: cgi c

/edit: je zult dus wel heeel veel meer moeten doen zoals anderen al zeggen ;)

[ Voor 27% gewijzigd door BoAC op 19-05-2006 09:22 ]


  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
RoccoD schreef op vrijdag 19 mei 2006 @ 09:02:
Ik zou niet de moeite nemen om een CGI applicatie in C(++) te bouwen. C(++) is zowiezo niet de ideale taal voor dit soort toepassingen. je moet erg uitkijken met je string handling e.d. Voor je het weet heb je ergens onder water een buffer overflow.
In C++ heb je natuurlijk wel STL waarmee safe string handling kan doen. Verder ben ik het wel met je eens. Een database koppeling leggen is ook niet echt eenvoudig te doen zoals Soultaker al aandraagt hebben PHP/Perl etc. hier standaard modules/libraries voor.

It’s nice to be important but it’s more important to be nice


  • RoccoD
  • Registratie: September 2003
  • Laatst online: 19-09-2025
pjonk schreef op vrijdag 19 mei 2006 @ 09:15:
[...]

In C++ heb je natuurlijk wel STL waarmee safe string handling kan doen. Verder ben ik het wel met je eens. Een database koppeling leggen is ook niet echt eenvoudig te doen zoals Soultaker al aandraagt hebben PHP/Perl etc. hier standaard modules/libraries voor.
Juist. Use the right tool for the right job. Mede omdat je met cgi veel met tekst scanning en databases en zo bezig bent kun je beter een taal nemen die daar voor ingericht is. Waar je standaard mogelijkheden hebt voor regexp's en database queries. oke oke, in c kan het uiteindelijk ook wel, maar dan moet je weer een hoop libraries meelinken die je ook compatible moeten zijn met het platform waar je webserver op loopt. Ik ben helemaal geen tegenstander van C(++). Het is m'n werk. Maar voor dit soort toepassing zou ik er met geen haar op m'n hoofd over denken om c te gebruiken ? Voor performance ? ja, lekker snel een database query opsturen die dan 2 seconden loop op de SQL server ;-)

Verwijderd

Topicstarter
Bedankt voor jullie antwoorden. Eigenlijk weet ik zelf ook wel wat de korste weg is in database-handling, nl. PHP. Maar omdat ik op school met c++ bezig ben, leek het mij niet handig om er nog een taal bij te gaan leren.
Aan de andere kant heb ik geen tot weinig documentatie en boeken gevonden over cgi en c++ en dat schrikt mij af. Ik zoek zoiets als deze handleiding, maar dan in boekvorm. Hoe hebben jullie het geleerd?

  • BoAC
  • Registratie: Februari 2003
  • Laatst online: 21-02 22:14

BoAC

Memento mori

Verwijderd schreef op vrijdag 19 mei 2006 @ 11:40:
.. Hoe hebben jullie het geleerd?
Door te doen zonder boekwerken :P
Google is your friend :)

Calling MySQL from C :) Dus zo heel moeilijk is het ook niet :)

  • moto-moi
  • Registratie: Juli 2001
  • Laatst online: 09-06-2011

moto-moi

Ja, ik haat jou ook :w

God, root, what is difference? | Talga Vassternich | IBM zuigt


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:27

.oisyn

Moderator Devschuur®

Demotivational Speaker

RoccoD schreef op vrijdag 19 mei 2006 @ 09:39:
[...]


Juist. Use the right tool for the right job. Mede omdat je met cgi veel met tekst scanning en databases en zo bezig bent kun je beter een taal nemen die daar voor ingericht is. Waar je standaard mogelijkheden hebt voor regexp's en database queries. oke oke, in c kan het uiteindelijk ook wel, maar dan moet je weer een hoop libraries meelinken die je ook compatible moeten zijn met het platform waar je webserver op loopt. Ik ben helemaal geen tegenstander van C(++). Het is m'n werk. Maar voor dit soort toepassing zou ik er met geen haar op m'n hoofd over denken om c te gebruiken ? Voor performance ? ja, lekker snel een database query opsturen die dan 2 seconden loop op de SQL server ;-)
boost? Daar zitten een hoop features in, waaronder regex en parser classes (die laatste heb je niet eens in PHP). En boost::any zou ook wel veel scripters aanspreken. Elke serieuze C++ developer zou 'm sowieso geïnstalleerd hebben moeten staan :).
(In C is het idd een crime, daar ben ik het mee eens... snap sowieso niet waarom mensen zich nou zo vast blijven klampen aan C anders dan voor kernel en embedded development and such. Maar goed, dat is een andere discussie.)

[ Voor 17% gewijzigd door .oisyn op 19-05-2006 12:55 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Topicstarter
BoAC schreef op vrijdag 19 mei 2006 @ 11:52:
[...]

Door te doen zonder boekwerken :P
Google is your friend :)

Calling MySQL from C :) Dus zo heel moeilijk is het ook niet :)
Mooi site-je, maar vervolgens loop je weer dood, of wordt je doorgelinkt. En zo gaat t elke keer. Google eats time. Ik ga dus toch op zoek naar n boek. ;)

  • BoAC
  • Registratie: Februari 2003
  • Laatst online: 21-02 22:14

BoAC

Memento mori

Verwijderd schreef op vrijdag 19 mei 2006 @ 13:01:
[...]


Mooi site-je, maar vervolgens loop je weer dood, of wordt je doorgelinkt. En zo gaat t elke keer. Google eats time. Ik ga dus toch op zoek naar n boek. ;)
Als je nu verder kijkt naar de info die je gegeven wordt door bijv moto-moi:
http://tangentsoft.net/mysql++/doc/userman/html/

/edit En het is uiteraard te combineren met de info van .oisyn ;)

[ Voor 8% gewijzigd door BoAC op 19-05-2006 13:11 ]


Verwijderd

Topicstarter
BoAC schreef op vrijdag 19 mei 2006 @ 13:08:
[...]

Als je nu verder kijkt naar de info die je gegeven wordt door bijv moto-moi:
http://tangentsoft.net/mysql++/doc/userman/html/

/edit En het is uiteraard te combineren met de info van .oisyn ;)
Sorry, je hebt gelijk. Deze is goed, die ga ik gebruiken.
Boeken vind ik toch ook wel lekker om te hebben (lekker compleet en je hoeft niet steeds te zoeken als je iets wilt), zoals deze: deze

  • BoAC
  • Registratie: Februari 2003
  • Laatst online: 21-02 22:14

BoAC

Memento mori

Verwijderd schreef op vrijdag 19 mei 2006 @ 17:09:
[...]


Sorry, je hebt gelijk. Deze is goed, die ga ik gebruiken.
Boeken vind ik toch ook wel lekker om te hebben (lekker compleet en je hoeft niet steeds te zoeken als je iets wilt), zoals deze: deze
Ik denk dat dat meer een kwestie is van wennen dan er echt gemak van hebben ;)
Pagina: 1