• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 14:01
CEST 20:01
KST 03:01
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
TL.net Map Contest #21: Voting10[ASL20] Ro4 Preview: Descent11Team TLMC #5: Winners Announced!3[ASL20] Ro8 Preview Pt2: Holding On9Maestros of the Game: Live Finals Preview (RO4)5
Community News
Chinese SC2 server to reopen; live all-star event in Hangzhou17Weekly Cups (Oct 13-19): Clem Goes for Four2BSL Team A vs Koreans - Sat-Sun 16:00 CET6Weekly Cups (Oct 6-12): Four star herO85.0.15 Patch Balance Hotfix (2025-10-8)81
StarCraft 2
General
5.0.15 Patch Balance Hotfix (2025-10-8) RotterdaM "Serral is the GOAT, and it's not close" Weekly Cups (Oct 13-19): Clem Goes for Four Chinese SC2 server to reopen; live all-star event in Hangzhou Weekly Cups (March 17-23): Clem Bounces Back
Tourneys
RSL Season 2 Qualifier Links and Dates $1,200 WardiTV October (Oct 21st-31st) SC2's Safe House 2 - October 18 & 19 INu's Battles #13 - ByuN vs Zoun Tenacious Turtle Tussle
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 496 Endless Infection Mutation # 495 Rest In Peace Mutation # 494 Unstable Environment Mutation # 493 Quick Killers
Brood War
General
SnOw's Awful Building Placements vs barracks Is there anyway to get a private coach? BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion BSL Season 21
Tourneys
[Megathread] Daily Proleagues 300$ 3D!Community Brood War Super Cup #4 [ASL20] Semifinal B Azhi's Colosseum - Anonymous Tournament
Strategy
Current Meta Roaring Currents ASL final [I] Funny Protoss Builds/Strategies BW - ajfirecracker Strategy & Training
Other Games
General Games
Path of Exile Stormgate/Frost Giant Megathread Nintendo Switch Thread Dawn of War IV ZeroSpace Megathread
Dota 2
Official 'what is Dota anymore' discussion LiquidDota to reintegrate into TL.net
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread SPIRED by.ASL Mafia {211640}
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine The Chess Thread Russo-Ukrainian War Thread Men's Fashion Thread
Fan Clubs
The herO Fan Club!
Media & Entertainment
Anime Discussion Thread Series you have seen recently... [Manga] One Piece Movie Discussion!
Sports
2024 - 2026 Football Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023 Formula 1 Discussion NBA General Discussion
World Cup 2022
Tech Support
SC2 Client Relocalization [Change SC2 Language] Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Recent Gifted Posts
Blogs
Sabrina was soooo lame on S…
Peanutsc
Our Last Hope in th…
KrillinFromwales
Certified Crazy
Hildegard
Rocket League: Traits, Abili…
TrAiDoS
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2100 users

Java or C#? - Page 3

Blogs > pQylling
Post a Reply
Prev 1 2 3 All
Azzur
Profile Blog Joined July 2010
Australia6260 Posts
July 04 2011 06:01 GMT
#41
Being a java programmer myself, I can say that there are many companies using this technology. One of the proponents of it (Oracle) also happen to be the major player for databases, so that is something as well. However, there are a lot of C# users, so taking that up would be good as well.
Deleted User 101379
Profile Blog Joined August 2010
4849 Posts
Last Edited: 2011-07-04 06:10:10
July 04 2011 06:07 GMT
#42
On July 04 2011 14:38 joban wrote:
Show nested quote +
On July 04 2011 13:49 InvalidID wrote:
On July 04 2011 13:27 obesechicken13 wrote:
On July 04 2011 13:20 joban wrote:
On July 04 2011 11:48 InvalidID wrote:
Neither C# nor Java are scripting languages, but they both can be used in a similar fashion: making quick, dirty programs. There is absolutely no need for pointers in modern high level, managed, languages: delegates serve the role of function pointers, and references do otherwise. This is a good thing, in the sort of cases where these languages are used, development time is more expensive then processor time, and you don't have to worry about memory management, the run-time does it all for you. This makes it very easy to write stable code.

Once you are used to using these high level languages, it will seem almost painful and silly to use C++. In terms of performance, you do get some advantage out of well written C++, but in the vast majority of cases the performance difference is not a huge concern(the difference is not orders of magnitude in most cases). http://reverseblade.blogspot.com/2009/02/c-versus-c-versus-java-performance.html Shows the benchmarks. Basically over a broad variety of performance benchmarks, on Windows, C++ was about 15% faster then C#, and C# was about 15% faster then Java.

The biggest advantage of C# versus Java is Visual Studio. It is by far the best IDE out there. It is just incredibly simple to make a quick program or web-app with a simple GUI. The auto-complete feature is incredible: it fills in the blanks as you navigate through class libraries, with a contextual help menu, eliminating the need to memorize a ton of apis.

The forms editor structures a template for a GUI app for you, and automatically does all the setup. You can't use this for all applications, but for a lot of simple script-type applications, where you want just simple text boxes and other standard controls, its as easy as drag and drop, then you just fill in the blanks for the various event functions it automatically sets up for you.


I've never used Visual Studio; but I'm curious to hear more about its qualities as an IDE. Don't you think ide's/gui's generally slow you down comparatively to command line and vi?

I totally agree with you that higher level languages like Python are generally a much nicer way to dive into programming, but I still think some C knowledge will benefit the intellectually curious who want to know about the processes underlying programming.


Only when the ide's don't work as intended. So yes... always.


You obviously work in very different areas of software development then me. The IDE form editor features are significant time savers, for simple gui apps, but you may trade some level of control(though you don't have to give it that control, you can use VS as basically VI with contextual help, and debug integration, if you so choose). You basically can use a graphical editor to design a "form" which is basically a window, or a web page depending on if you are using windows forms or ASP+. You can then graphically assign assorted events to functions, and voila, you have the shell of a UI. It takes about 5 minutes to get a basic windows app setup, far less then manually coding all the controls in, and its visual, so you don't have to twiddle around recompiling a million times to get a simple UI to look the way you want it to. Again, and most importantly, you don't have to use the forms editor if you don't think it gives you the flexibility you want for your app, you can use it just like you use VI/command line with whatever additional features you desire.

When you get into more complex apps, then maybe the forms editor loses its advantage, as you traded some level of control away to have a skeleton UI laid out for you. I have yet to see it pose significant problems, as you can over-ride pretty much anything the IDE does manually.

Contextual help is probably the killer app of VS though. Basically, it provides a popup menu of the MSDN library documentation. For example, if I could not remember the correct function to split a string, typing string. would pop up all the functions under the string class for you to select from(though you can just ignore it and type if you know what you want, its basically like the autocomplete feature of google). It automatically generates the same for any other library you have included. It is implemented very elegantly, and once you get used to it, it is a headache to use anything else, and constantly have to look things up online.

The debug features are also very well implemented, and it seems to save a lot of time. At any given break-point or error, or even run-time point, when you are running your app in debug mode, you can see the values of all variables in the memory of your app. You can do the same with the command line but it is far less elegantly implemented.

VS is probably the main reason that Microsoft is so dominant in the enterprise: it is just an enormous time saver for writing the kind of apps we need to write in the enterprise. These apps don't need super fancy UI functionality, they need stability, simple text boxes/buttons, graphical displays simple UI logic, and low development costs. I am a big supporter of open source, but I have yet to see an open source offering with comparable functionality(though Eclipse is getting better).

Thank you for this, that was actually really informative. I used to fuck with Textmate, but when I switched to terminal (yes, I use a mac. you'd be surprised at how dominant the mac platform is in silicon valley among consumer internet companies- I know I was) I've haven't looked back- so I don't even know what most IDE's can do.


I do 99% of my programming work with vim, but i'm really happy when there is some C# development to do for which i can use VS. I've tried a lot of free IDEs, Eclipse, Netbeans, kdevelop, ... but none of those even gets close to what VS has to offer. It was a big factor in my decision to use C# for most of my private projects.

About Java and C#, the only reasons why someone should choose java would be either required portability (though mono does quite a good job for C# except for ASP.NET) or an existing java environment.
Java just has a lot of design decisions that don't make a lot of sense (to me) and it fell behind in features, so compared to C# it's just clumsy to code in Java, though i have to admit that it could have changed in the two years that i didn't touch java anymore.

In terms of web development i only did some asp.net stuff, which was ok but not really what i prefer. ASP.NET is ok, it can do quite a lot, but it adds a billion layers which often make it a hell to use. If you are going heavy into web development i suggest either going the PHP route or trying Java (though i have no experience with java web development).

My most recent private web project uses a thin php frontend with a lot of javascript and all the heavy work is done in a C# server (did you know that .NET actually provides a complete embedded webserver? i was suprised when i found that out :p) to which the php frontend connects via TCP/IP. It allows me to use the strengths of each language to it's fullest while i'm still avoiding most of the weaknesses... but it's still a complex solution not suited for beginners who can't differentiate between scripting languages and programming languages
vek
Profile Joined March 2010
Australia936 Posts
July 04 2011 06:17 GMT
#43
On July 04 2011 14:38 joban wrote:
Show nested quote +
On July 04 2011 13:49 InvalidID wrote:
On July 04 2011 13:27 obesechicken13 wrote:
On July 04 2011 13:20 joban wrote:
On July 04 2011 11:48 InvalidID wrote:
Neither C# nor Java are scripting languages, but they both can be used in a similar fashion: making quick, dirty programs. There is absolutely no need for pointers in modern high level, managed, languages: delegates serve the role of function pointers, and references do otherwise. This is a good thing, in the sort of cases where these languages are used, development time is more expensive then processor time, and you don't have to worry about memory management, the run-time does it all for you. This makes it very easy to write stable code.

Once you are used to using these high level languages, it will seem almost painful and silly to use C++. In terms of performance, you do get some advantage out of well written C++, but in the vast majority of cases the performance difference is not a huge concern(the difference is not orders of magnitude in most cases). http://reverseblade.blogspot.com/2009/02/c-versus-c-versus-java-performance.html Shows the benchmarks. Basically over a broad variety of performance benchmarks, on Windows, C++ was about 15% faster then C#, and C# was about 15% faster then Java.

The biggest advantage of C# versus Java is Visual Studio. It is by far the best IDE out there. It is just incredibly simple to make a quick program or web-app with a simple GUI. The auto-complete feature is incredible: it fills in the blanks as you navigate through class libraries, with a contextual help menu, eliminating the need to memorize a ton of apis.

The forms editor structures a template for a GUI app for you, and automatically does all the setup. You can't use this for all applications, but for a lot of simple script-type applications, where you want just simple text boxes and other standard controls, its as easy as drag and drop, then you just fill in the blanks for the various event functions it automatically sets up for you.


I've never used Visual Studio; but I'm curious to hear more about its qualities as an IDE. Don't you think ide's/gui's generally slow you down comparatively to command line and vi?

I totally agree with you that higher level languages like Python are generally a much nicer way to dive into programming, but I still think some C knowledge will benefit the intellectually curious who want to know about the processes underlying programming.


Only when the ide's don't work as intended. So yes... always.


You obviously work in very different areas of software development then me. The IDE form editor features are significant time savers, for simple gui apps, but you may trade some level of control(though you don't have to give it that control, you can use VS as basically VI with contextual help, and debug integration, if you so choose). You basically can use a graphical editor to design a "form" which is basically a window, or a web page depending on if you are using windows forms or ASP+. You can then graphically assign assorted events to functions, and voila, you have the shell of a UI. It takes about 5 minutes to get a basic windows app setup, far less then manually coding all the controls in, and its visual, so you don't have to twiddle around recompiling a million times to get a simple UI to look the way you want it to. Again, and most importantly, you don't have to use the forms editor if you don't think it gives you the flexibility you want for your app, you can use it just like you use VI/command line with whatever additional features you desire.

When you get into more complex apps, then maybe the forms editor loses its advantage, as you traded some level of control away to have a skeleton UI laid out for you. I have yet to see it pose significant problems, as you can over-ride pretty much anything the IDE does manually.

Contextual help is probably the killer app of VS though. Basically, it provides a popup menu of the MSDN library documentation. For example, if I could not remember the correct function to split a string, typing string. would pop up all the functions under the string class for you to select from(though you can just ignore it and type if you know what you want, its basically like the autocomplete feature of google). It automatically generates the same for any other library you have included. It is implemented very elegantly, and once you get used to it, it is a headache to use anything else, and constantly have to look things up online.

The debug features are also very well implemented, and it seems to save a lot of time. At any given break-point or error, or even run-time point, when you are running your app in debug mode, you can see the values of all variables in the memory of your app. You can do the same with the command line but it is far less elegantly implemented.

VS is probably the main reason that Microsoft is so dominant in the enterprise: it is just an enormous time saver for writing the kind of apps we need to write in the enterprise. These apps don't need super fancy UI functionality, they need stability, simple text boxes/buttons, graphical displays simple UI logic, and low development costs. I am a big supporter of open source, but I have yet to see an open source offering with comparable functionality(though Eclipse is getting better).

Thank you for this, that was actually really informative. I used to fuck with Textmate, but when I switched to terminal (yes, I use a mac. you'd be surprised at how dominant the mac platform is in silicon valley among consumer internet companies- I know I was) I've haven't looked back- so I don't even know what most IDE's can do.


I like writing scripts/php/css/js etc in either Textpad or just through the terminal. I've tried using an IDE for php once and it just got in the way. I agree with you that using an IDE is not always the best solution. I think too many people use Eclipse as a "one size fits all" solution.

That said, using Eclipse for Java development is amazing. You can auto generate so much boring code it really removes a lot of the effort of adding new features. I also love how easy refactoring with Eclipse is and how well it integrates with version control.
vek
Profile Joined March 2010
Australia936 Posts
July 04 2011 06:30 GMT
#44
On July 04 2011 15:07 Morfildur wrote:My most recent private web project uses a thin php frontend with a lot of javascript and all the heavy work is done in a C# server (did you know that .NET actually provides a complete embedded webserver? i was suprised when i found that out :p) to which the php frontend connects via TCP/IP. It allows me to use the strengths of each language to it's fullest while i'm still avoiding most of the weaknesses... but it's still a complex solution not suited for beginners who can't differentiate between scripting languages and programming languages


Cool. We are doing a very similar thing in project my team is involved with at the moment. We use multiple Java components as the "back end" to do the database and archiving work. We then have PHP (and a lot of ajax) as the "UI layer".

It's a super easy and flexible way of doing things.

Load balancing is also a piece of cake because you can just launch more of which ever component is being hit hard.

A really cool solution though :D
obesechicken13
Profile Blog Joined July 2008
United States10467 Posts
July 04 2011 07:59 GMT
#45
On July 04 2011 13:49 InvalidID wrote:
Show nested quote +
On July 04 2011 13:27 obesechicken13 wrote:
On July 04 2011 13:20 joban wrote:
On July 04 2011 11:48 InvalidID wrote:
Neither C# nor Java are scripting languages, but they both can be used in a similar fashion: making quick, dirty programs. There is absolutely no need for pointers in modern high level, managed, languages: delegates serve the role of function pointers, and references do otherwise. This is a good thing, in the sort of cases where these languages are used, development time is more expensive then processor time, and you don't have to worry about memory management, the run-time does it all for you. This makes it very easy to write stable code.

Once you are used to using these high level languages, it will seem almost painful and silly to use C++. In terms of performance, you do get some advantage out of well written C++, but in the vast majority of cases the performance difference is not a huge concern(the difference is not orders of magnitude in most cases). http://reverseblade.blogspot.com/2009/02/c-versus-c-versus-java-performance.html Shows the benchmarks. Basically over a broad variety of performance benchmarks, on Windows, C++ was about 15% faster then C#, and C# was about 15% faster then Java.

The biggest advantage of C# versus Java is Visual Studio. It is by far the best IDE out there. It is just incredibly simple to make a quick program or web-app with a simple GUI. The auto-complete feature is incredible: it fills in the blanks as you navigate through class libraries, with a contextual help menu, eliminating the need to memorize a ton of apis.

The forms editor structures a template for a GUI app for you, and automatically does all the setup. You can't use this for all applications, but for a lot of simple script-type applications, where you want just simple text boxes and other standard controls, its as easy as drag and drop, then you just fill in the blanks for the various event functions it automatically sets up for you.


I've never used Visual Studio; but I'm curious to hear more about its qualities as an IDE. Don't you think ide's/gui's generally slow you down comparatively to command line and vi?

I totally agree with you that higher level languages like Python are generally a much nicer way to dive into programming, but I still think some C knowledge will benefit the intellectually curious who want to know about the processes underlying programming.


Only when the ide's don't work as intended. So yes... always.


You obviously work in very different areas of software development then me. The IDE form editor features are significant time savers, for simple gui apps, but you may trade some level of control(though you don't have to give it that control, you can use VS as basically VI with contextual help, and debug integration, if you so choose). You basically can use a graphical editor to design a "form" which is basically a window, or a web page depending on if you are using windows forms or ASP+. You can then graphically assign assorted events to functions, and voila, you have the shell of a UI. It takes about 5 minutes to get a basic windows app setup, far less then manually coding all the controls in, and its visual, so you don't have to twiddle around recompiling a million times to get a simple UI to look the way you want it to. Again, and most importantly, you don't have to use the forms editor if you don't think it gives you the flexibility you want for your app, you can use it just like you use VI/command line with whatever additional features you desire.

When you get into more complex apps, then maybe the forms editor loses its advantage, as you traded some level of control away to have a skeleton UI laid out for you. I have yet to see it pose significant problems, as you can over-ride pretty much anything the IDE does manually.

Contextual help is probably the killer app of VS though. Basically, it provides a popup menu of the MSDN library documentation. For example, if I could not remember the correct function to split a string, typing string. would pop up all the functions under the string class for you to select from(though you can just ignore it and type if you know what you want, its basically like the autocomplete feature of google). It automatically generates the same for any other library you have included. It is implemented very elegantly, and once you get used to it, it is a headache to use anything else, and constantly have to look things up online.

The debug features are also very well implemented, and it seems to save a lot of time. At any given break-point or error, or even run-time point, when you are running your app in debug mode, you can see the values of all variables in the memory of your app. You can do the same with the command line but it is far less elegantly implemented.

VS is probably the main reason that Microsoft is so dominant in the enterprise: it is just an enormous time saver for writing the kind of apps we need to write in the enterprise. These apps don't need super fancy UI functionality, they need stability, simple text boxes/buttons, graphical displays simple UI logic, and low development costs. I am a big supporter of open source, but I have yet to see an open source offering with comparable functionality(though Eclipse is getting better).

Yes, you're right. I'm mostly kidding, IDE's are definitely worth the time, but they can also be frustrating to use and sometimes they don't work properly with the shell commands or with debugging servers. It's quite a hassle to get them to work, but that's probably due to inexperience on my part.
I think in our modern age technology has evolved to become more addictive. The things that don't give us pleasure aren't used as much. Work was never meant to be fun, but doing it makes us happier in the long run.
pQylling
Profile Blog Joined September 2010
Denmark139 Posts
July 04 2011 10:03 GMT
#46
Thanks for the answers guys. It seems like i managed to cause some confusion with my mistake! I just assumed Java to be a scripting language since I believe programs like Unity use scripts created in Java and/or C#, correct me if I'm wrong but can scripts not be created with java (javascript, although it's not the same thing i guess) or C#? Also it is pretty clear that I am not well versed in the programming world. I just saw that C# had pointers and i guess my mind went "Ooh, I know what that is. gogo!".

I should have been more clear on this but what i want to do with these languages is to first of all learn them and become better at programming and slowly start to try my hand at creating small applets for my web page and maybe even for my phone. Just for fun.
Deleted User 101379
Profile Blog Joined August 2010
4849 Posts
July 04 2011 11:08 GMT
#47
On July 04 2011 19:03 pQylling wrote:
Thanks for the answers guys. It seems like i managed to cause some confusion with my mistake! I just assumed Java to be a scripting language since I believe programs like Unity use scripts created in Java and/or C#, correct me if I'm wrong but can scripts not be created with java (javascript, although it's not the same thing i guess) or C#? Also it is pretty clear that I am not well versed in the programming world. I just saw that C# had pointers and i guess my mind went "Ooh, I know what that is. gogo!".

I should have been more clear on this but what i want to do with these languages is to first of all learn them and become better at programming and slowly start to try my hand at creating small applets for my web page and maybe even for my phone. Just for fun.


When people mistake java for javascript (or the other way around) i always want to kill someone.
Javascript has nothing to do with java at all, it doesn't even have the same programming paradigm (javascript is prototype based, java object oriented).

If you want to develop for the phone it depends on the kind of phone you have.
iOS based => objective-c,
Android => Java,
Windows Mobile => C#

For your website you probably want javascript, which - as i said - has nothing to do with the other languages.
berated-
Profile Blog Joined February 2007
United States1134 Posts
July 04 2011 12:22 GMT
#48
On July 04 2011 15:07 Morfildur wrote:

I do 99% of my programming work with vim, but i'm really happy when there is some C# development to do for which i can use VS. I've tried a lot of free IDEs, Eclipse, Netbeans, kdevelop, ... but none of those even gets close to what VS has to offer. It was a big factor in my decision to use C# for most of my private projects.

About Java and C#, the only reasons why someone should choose java would be either required portability (though mono does quite a good job for C# except for ASP.NET) or an existing java environment.
Java just has a lot of design decisions that don't make a lot of sense (to me) and it fell behind in features, so compared to C# it's just clumsy to code in Java, though i have to admit that it could have changed in the two years that i didn't touch java anymore.


I think the concept that a lot of people are missing when talking about IDEs, as well as almost every concept in programming, is you need to find the right tool to do the job you are trying to accomplish. I've been surprised by the amount of people saying that why would you use an ide, I just want to use vim, etc...

I have an interesting perspective on this because I do both php dev and also do enterprise java web development - vim, textmate, other text editors are awesome when your code base is small. However, if the IDEs for php didn't suck so bad, I think a lot of people would change their mind as to what they preferred if their code base started getting large.

My companies website runs roughly 1million lines of java code if you trace it all the way from front end to back end. One would be out of their mind if they thought they were not going to use an IDE to do their development. The ability to find where a method is called every where in the source code, move to a method declaration with one key press instead of finding what the object is, finding the class its declared in, and then opening that file saves an incredible amount of time. Other things like automatic compiling and built in maven integration make the IDE imperative for my job, but only because I have all the needs the IDE helps solve.


In terms of web development i only did some asp.net stuff, which was ok but not really what i prefer. ASP.NET is ok, it can do quite a lot, but it adds a billion layers which often make it a hell to use. If you are going heavy into web development i suggest either going the PHP route or trying Java (though i have no experience with java web development).


When deciding which language to use for web development, one needs to ask the same questions. For a simple website the overhead of firing up a tomcat/jetty/jboss/glassfish server with a full jvm is way over the top. Phps ability to just change out files and automatically have your changes in are better for minor tweaks - to accomplish the same thing in java you have to reload an entire webapp ( excluding more advanced techniques ). For larger full blown web applications though - being in a jvm with the support of a framework like struts or stripes makes things quite a bit easier.


My most recent private web project uses a thin php frontend with a lot of javascript and all the heavy work is done in a C# server (did you know that .NET actually provides a complete embedded webserver? i was suprised when i found that out :p) to which the php frontend connects via TCP/IP. It allows me to use the strengths of each language to it's fullest while i'm still avoiding most of the weaknesses... but it's still a complex solution not suited for beginners who can't differentiate between scripting languages and programming languages


netbeans can do the same thing - it can actually run both embedded tomcat and glassfish servers.
Deleted User 101379
Profile Blog Joined August 2010
4849 Posts
July 04 2011 12:50 GMT
#49
On July 04 2011 21:22 berated- wrote:
Show nested quote +

My most recent private web project uses a thin php frontend with a lot of javascript and all the heavy work is done in a C# server (did you know that .NET actually provides a complete embedded webserver? i was suprised when i found that out :p) to which the php frontend connects via TCP/IP. It allows me to use the strengths of each language to it's fullest while i'm still avoiding most of the weaknesses... but it's still a complex solution not suited for beginners who can't differentiate between scripting languages and programming languages


netbeans can do the same thing - it can actually run both embedded tomcat and glassfish servers.


Thats still the IDE, not the language (or rather framework).

.NET has a full WebServer integrated (it even works with mono). Writing your own Web Server is as simple as writing

HttpListener listener = new HttpListener();
listener.Prefixes.Add("http://localhost:1861/");
listener.Start();
listener.BeginGetContext(request_callback, listener);


It makes some tasks very trivial, in my example i use it in the server to recieve REST-like messages. The whole networking part is in the above 4 lines. For that project I was originally writing standard TCP/IP networking code which spanned quite a few lines and i was very happy when i found out that it's actually that easy (eventhough HTTP is of course slower than just TCP). In the PHP frontend i just use CURL to send and retrieve data, so i don't even need to bother with networking code there.

Anyways, you are definatly right about PHP IDEs, i'd gladly use one (though most of the development is done via SSH on the dev server) if they wouldn't be so horrible. In part it's actually PHPs fault though, or rather a problem in languages with no strict types. If a single variable can have 10 different types in just as many lines it's hard for the IDE to understand which type the variable has at any given point in the code and provide the correct code completion.

Example:

$foo = new TypeA();
if ($something)
{
$foo = new TypeB();
}
elseif ($something_else)
{
$foo = 3;
}
$foo->.... what is $foo now?


IDEs in PHP mainly work as shortcut for the manual by providing the prototype for the PHP functions... which you usually can remember anyways after using them a few times.
haduken
Profile Blog Joined April 2003
Australia8267 Posts
July 04 2011 13:03 GMT
#50
C# just because of LINQ

Entity Framework is also good. I can't stand the lag on Java IDEs.
Rillanon.au
berated-
Profile Blog Joined February 2007
United States1134 Posts
July 04 2011 13:10 GMT
#51
On July 04 2011 21:50 Morfildur wrote:
Show nested quote +
On July 04 2011 21:22 berated- wrote:

My most recent private web project uses a thin php frontend with a lot of javascript and all the heavy work is done in a C# server (did you know that .NET actually provides a complete embedded webserver? i was suprised when i found that out :p) to which the php frontend connects via TCP/IP. It allows me to use the strengths of each language to it's fullest while i'm still avoiding most of the weaknesses... but it's still a complex solution not suited for beginners who can't differentiate between scripting languages and programming languages


netbeans can do the same thing - it can actually run both embedded tomcat and glassfish servers.


Thats still the IDE, not the language (or rather framework).

.NET has a full WebServer integrated (it even works with mono). Writing your own Web Server is as simple as writing

HttpListener listener = new HttpListener();
listener.Prefixes.Add("http://localhost:1861/");
listener.Start();
listener.BeginGetContext(request_callback, listener);


It makes some tasks very trivial, in my example i use it in the server to recieve REST-like messages. The whole networking part is in the above 4 lines. For that project I was originally writing standard TCP/IP networking code which spanned quite a few lines and i was very happy when i found out that it's actually that easy (eventhough HTTP is of course slower than just TCP). In the PHP frontend i just use CURL to send and retrieve data, so i don't even need to bother with networking code there.

Anyways, you are definatly right about PHP IDEs, i'd gladly use one (though most of the development is done via SSH on the dev server) if they wouldn't be so horrible. In part it's actually PHPs fault though, or rather a problem in languages with no strict types. If a single variable can have 10 different types in just as many lines it's hard for the IDE to understand which type the variable has at any given point in the code and provide the correct code completion.

Example:

$foo = new TypeA();
if ($something)
{
$foo = new TypeB();
}
elseif ($something_else)
{
$foo = 3;
}
$foo->.... what is $foo now?


IDEs in PHP mainly work as shortcut for the manual by providing the prototype for the PHP functions... which you usually can remember anyways after using them a few times.


Ahh, I see about what you are saying now with .net - my bad on the mix up there. More than the language though - that's just a good design for realizing that there is reusable code that can be wrapped easily. Kudos to .NET for pulling it into their language.

To stray a little bit, that's actually the main reason I love programming in java and why if the op really had to pick a language out of java/c# for anything other than windows development I'd go with java. The top-level apache projects provide so many reusable libraries from solr/lucene to camel to hadoop to the apache-commons libraries that you can solve almost any project by just integrating them into your own needs. Not reinventing the wheel is pretty sweet.
Prev 1 2 3 All
Please log in or register to reply.
Live Events Refresh
OSC
16:00
Masters Cup #150 Qual 1-2
davetesta27
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
ProTech103
BRAT_OK 95
UpATreeSC 75
Codebar 32
MindelVK 20
JuggernautJason8
StarCraft: Brood War
Bisu 1273
firebathero 425
Soulkey 178
Hyun 155
Mind 96
Movie 42
Yoon 34
scan(afreeca) 24
Rock 18
Mong 1
Dota 2
qojqva4981
Dendi1361
LuMiX1
Counter-Strike
fl0m1055
Other Games
Grubby1895
FrodaN1082
Beastyqt626
ceh9432
B2W.Neo404
mouzStarbuck229
KnowMe204
Skadoodle143
ArmadaUGS86
C9.Mang085
Trikslyr58
Mew2King53
QueenE51
OptimusSC23
Organizations
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 17 non-featured ]
StarCraft 2
• maralekos1
• IndyKCrew
• AfreecaTV YouTube
• sooper7s
• intothetv
• Kozan
• Migwel
• LaughNgamezSOOP
StarCraft: Brood War
• Michael_bg 5
• Pr0nogo 4
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• C_a_k_e 2807
League of Legends
• Nemesis3523
• imaqtpie1379
• TFBlade704
Upcoming Events
Tenacious Turtle Tussle
4h 59m
The PondCast
15h 59m
OSC
17h 59m
WardiTV Invitational
1d 16h
Online Event
1d 21h
RSL Revival
2 days
RSL Revival
2 days
WardiTV Invitational
2 days
Afreeca Starleague
3 days
Snow vs Soma
Sparkling Tuna Cup
3 days
[ Show More ]
WardiTV Invitational
3 days
CrankTV Team League
3 days
RSL Revival
3 days
Wardi Open
4 days
CrankTV Team League
4 days
Replay Cast
5 days
WardiTV Invitational
5 days
CrankTV Team League
5 days
Replay Cast
6 days
CrankTV Team League
6 days
Liquipedia Results

Completed

Acropolis #4 - TS2
WardiTV TLMC #15
HCC Europe

Ongoing

BSL 21 Points
ASL Season 20
CSL 2025 AUTUMN (S18)
C-Race Season 1
IPSL Winter 2025-26
EC S1
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual

Upcoming

SC4ALL: Brood War
BSL Season 21
BSL 21 Team A
BSL 21 Non-Korean Championship
RSL Offline Finals
RSL Revival: Season 3
Stellar Fest
SC4ALL: StarCraft II
CranK Gathers Season 2: SC II Pro Teams
eXTREMESLAND 2025
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.