LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
Search this Thread
Old 10-07-2012, 04:32 AM   #1
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,622
Blog Entries: 29

Rep: Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896
What topics do I need to study for *web* client server programming - Web service?


I know about client server programming through sockets in C/C++.

What topics do I need to study for website related client server programming?

- The database which we'll be using will be either MySQL or Postgress.
- The platform will be Linux.
- I don't know which language should be preferred here.

I just don't know where to start.
Please guide.

Last edited by TheIndependentAquarius; 10-07-2012 at 10:24 PM. Reason: Added a keyword in title according to Dugan's post.
 
Old 10-07-2012, 07:13 AM   #2
suttiwit
Member
 
Registered: Aug 2012
Location: Chiang Mai, Thailand
Distribution: Kubuntu 12.10 x86_64
Posts: 192
Blog Entries: 2

Rep: Reputation: 22
Well, if you mean "web development (cgi, etc)", Python is a good language.
 
Old 10-07-2012, 08:33 AM   #3
theNbomr
LQ 5k Club
 
Registered: Aug 2005
Distribution: OpenSuse, Fedora, Redhat, Debian
Posts: 5,395
Blog Entries: 2

Rep: Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903
For CGI applications using Linux, you can use any language that can read/write stdio, can access the Linux environment, and can access it's own commandline arguments. This accommodates HTTP GET & POST requests, and Apache and most other web servers. If you are already familiar with C/C++, you can use that, although compiled languages are less traditional than scripting languages.
If you are going to be building full-fledged applications, you may wish to consider some kind of application-building framework, such as Ruby-On-Rails, Django, and numerous others. These will provide a lot of working code, as well as a well designed structure upon which to build. Most will assume the use of one particular programming language, and which language(s) you prefer will influence which framework is best suited to you.
If you are planning to write your own web server or even browser, then don't. There are already enough of those available and the selection covers the spectrum of needs quite well. Many open-source packages exist, and the use of these as a basis for study or extension would be a good idea.
No matter what aspect of website creation you will be doing, it is almost certainly useful to understand HTTP & HTML, if not in detail, then at least in general. It may also be useful to understand some HTML-related subjects such as CSS, Javascript, XML, and perhaps Java as it relates to client-side applets.
Enjoy the buzzword soup.

--- rod.
 
1 members found this post helpful.
Old 10-07-2012, 12:25 PM   #4
dugan
Senior Member
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 4,665

Rep: Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440
First, what exactly is "website related client server programming"? I assume you're asking how to write a website. So...

"The Platform will be Linux"? So any web framework that can be hosted on Linux will be acceptable? You can't go wrong with Django (a Python web framework).

Ruby on Rails is another popular option.

To "start", visit their homepages and go through the tutorials you find there.

And do not, under any circumstances, even consider PHP.

Also, I've noticed that you like the answer you got on StackExchange:
http://programmers.stackexchange.com/a/167866/16764

Last edited by dugan; 10-07-2012 at 01:50 PM.
 
1 members found this post helpful.
Old 10-07-2012, 04:32 PM   #5
amboxer21
Member
 
Registered: Mar 2012
Location: New Jersey
Distribution: Gentoo
Posts: 276

Rep: Reputation: Disabled
http://nodejs.org/ maybe??

WIKI -> http://en.wikipedia.org/wiki/Nodejs
 
2 members found this post helpful.
Old 10-07-2012, 09:59 PM   #6
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,622
Blog Entries: 29

Original Poster
Rep: Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896
Quote:
Originally Posted by dugan View Post
First, what exactly is "website related client server programming"? I assume you're asking how to write a website. So...
Actually, I have been told that there will be a website which will act
like a server and another website will act like a client. The client
website will ask for a data from the server website.

Quote:
Originally Posted by dugan View Post
"The Platform will be Linux"? So any web framework that can be hosted on Linux will be acceptable? You can't go wrong with Django (a Python web framework).
Thanks, will study about Django. We'll prefer something with GPL 2 license
probably. This thing will be probably sold.

Quote:
Originally Posted by dugan View Post
Ruby on Rails is another popular option.
Which is considered easier among them?

Quote:
Originally Posted by dugan View Post
And do not, under any circumstances, even consider PHP.
What's the reason? Please explain.

Quote:
Originally Posted by dugan View Post
Also, I've noticed that you like the answer you got on StackExchange:
http://programmers.stackexchange.com/a/167866/16764
Is that a non-so-correct answer? What was your point in linking that here?

Quote:
Originally Posted by theNbomr View Post
For CGI applications using Linux, you can use any language that can read/write stdio, can access the Linux environment, and can access it's own commandline arguments. This accommodates HTTP GET & POST requests, and Apache and most other web servers. If you are already familiar with C/C++, you can use that, although compiled languages are less traditional than scripting languages.
I am not familiar with any other scripting language that PHP and Python.
Will using C/C++ be problematic?

Quote:
Originally Posted by theNbomr View Post
If you are going to be building full-fledged applications, you may wish to consider some kind of application-building framework, such as Ruby-On-Rails, Django, and numerous others. These will provide a lot of working code, as well as a well designed structure upon which to build. Most will assume the use of one particular programming language, and which language(s) you prefer will influence which framework is best suited to you.
Many thanks for the info.

Quote:
Originally Posted by theNbomr View Post
If you are planning to write your own web server or even browser, then don't.
I don't know whether that server website will be already existing or I'll
have to write one - I'll find out.

Quote:
Originally Posted by theNbomr View Post
No matter what aspect of website creation you will be doing, it is almost certainly useful to understand HTTP & HTML, if not in detail, then at least in general. It may also be useful to understand some HTML-related subjects such as CSS, Javascript, XML, and perhaps Java as it relates to client-side applets.
Lots of thanks to you for letting me know the keywords.

Last edited by TheIndependentAquarius; 10-07-2012 at 10:21 PM. Reason: Typo: Replaced I with Is
 
Old 10-07-2012, 10:15 PM   #7
dugan
Senior Member
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 4,665

Rep: Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440
Quote:
Originally Posted by Anisha Kaul View Post
Actually, I have been told that there will be a website which will act like a server and another website will act like a client. The client website will ask for a data from the server website.
I see.

The "website the acts as a server" will actually be a web service. A web service is usually a set of URLs that return and take data in some serializable format such as JSON. I've had good experiences building them with Django and Tastypie. Node.js (which amboxer recommended) is a pretty trendy choice these days too.

The client website will use Ajax to consume the web service. Use jQuery for that.

Last edited by dugan; 10-07-2012 at 10:17 PM.
 
1 members found this post helpful.
Old 10-07-2012, 10:17 PM   #8
TheIndependentAquarius
Senior Member
 
Registered: Dec 2008
Posts: 4,622
Blog Entries: 29

Original Poster
Rep: Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896Reputation: 896
Many thanks Dugan, will look into that stuff.
It would be helpful if you could clarify about the PHP thing.

:-)


Thanks to amboxer21, for mentioning the nodejs.

Last edited by TheIndependentAquarius; 10-07-2012 at 10:34 PM.
 
Old 10-07-2012, 10:19 PM   #9
dugan
Senior Member
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 4,665

Rep: Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440Reputation: 1440
Quote:
Originally Posted by Anisha Kaul View Post
Many thanks Dugan, will look into that stuff.
It would be helpful if you could clarify about the PHP thing.

:-)
It's just a horribly designed language, has a horribly designed standard library, and is a nightmare to work with.

http://me.veekun.com/blog/2012/04/09...of-bad-design/

Last edited by dugan; 10-07-2012 at 10:21 PM.
 
1 members found this post helpful.
Old 03-15-2013, 09:53 AM   #10
theNbomr
LQ 5k Club
 
Registered: Aug 2005
Distribution: OpenSuse, Fedora, Redhat, Debian
Posts: 5,395
Blog Entries: 2

Rep: Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903Reputation: 903
Please start your own thread for such unrelated subjects, and don't hijack a thread started by someone else. Your subject line should have something to do with building 'something'; there doesn't seem to be a kernel-related aspect to what you've written here.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
find ip address in c programming of server in client server batman4 Programming 5 09-12-2012 05:21 AM
[SOLVED] win7 web client problem with apache2 web server on linux lapinux Linux - Networking 2 03-15-2011 12:21 PM
web client programming 298 Linux - Software 2 01-29-2009 05:39 AM
Client-Server Programming Mohsen Programming 4 07-15-2003 01:58 AM
Can't access Linux web server web pages from LAN client jaydave Linux - Networking 4 03-16-2003 02:38 AM


All times are GMT -5. The time now is 01:15 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration