Programming Lessons
-
These limitations don’t seem life threatening - great for a free IDE like Visual Studio, I’ll place this link in my tutorials to the download - props to Microsoft for even allowing the latest 2008 express edition to be downloaded free…
No IDE support for databases other than SQL Server Express and Microsoft Access
No support for Web Applications with ASP.NET (this can instead be done with Visual Web Developer Express, though the non-Express version of Visual Studio allows both web and windows applications from the same IDE)
No support for developing for mobile devices (no templates or emulator)
No Crystal Reports
Fewer project templates (e.g. Windows services template, Excel Workbook template)
Limited options for debugging and breakpoints.
No support for creating Windows Services -
I’d say the limitations aren’t really getting hit by the relatively simple programming related with Freelancer stuff.
-
Yeah I’d agree, I mean you can even still use SQL databases and MS Access Databases, which is all you really need (at least all I ever used…)
After the BETA of Biocross has been released I’ll start some engaging, exciting and tantalising video tutorial for you - I’ll start pencilling down some things to go over with you, should be fun
-
Oi, I’m VC++ .NET ;D
But hey, those tuts would be really awesome. Go for it mate!
There is managed C++ which you can use in combination with .NET, so that point, you are completely right
Btw isn’t it easier to start off first talking about definations like methods, attributes, classes, how classes will be used by the garbagecollector (stackmemory and heapmemory), types etc? Just for the peope who have a knowlegde of 0,0 ^^
I have also made once on a forum a programming tutorial (making a console application in C# .NET) which descriped in a basic way what classes, methods, attributes etc were, alltough too bad i lost it
-
I think starting with classes in programming would be akin to starting with a highway run on your first drive. It’s just very complicated compared to other programming stuff and is relatively high-level programming when you take everything in consideration. Starting with variable types, then structures and methods, then pointers and THEN classes (some do Strings before, others do them after) would be better. Error management is also a good point, but it can usually come in later on.
-
Bah! learn x86 assembly. These .Net/C#/C++/Java/AJAX things are a fad that will pass.
Seriously, the most useful thing for pulling apart Freelancer is a solid knowledge of x86 assembly. I don’t really have this knowledge although I’m getting a little better. The next most useful language is C++ or/and C. The .Net family is useful for all sorts of jobs and C# (or java for that matter) are great languages for learning how to program. In my view, the best way to learn programming is to just do it (and by looking at other peoples code and books).
And yes, I’d be interested in C#-FL tutorials.
-
I know a little assembly - enough to make trainers for games, the usual stuff like pointers registers etc.
I doubt I could create a program IN assembly however - and I would like to point out with .NET anything is possible, at least I believe that is so….
Besides running faster and lack of garbage collection what does C++ have that VB.NET doesn’t? - below is a comparison of C++ and VB 6 I found on some forums, granted VB.NET is even slower than said times below but do milliseconds matter?..
I later learned Pascal and then C and C++. But as a professional programmer I got my first job as a C++ programmer, the year was 1987 and I had just turned 19 (hmmm… I’m giving away my age here, one of those well preserved secrets). Anyhow, Windows where nowhere in sight yet so I wrote custom applications for DOS. When VB was first introduced in the early '90s I jumped on it faster then Pamela Anderson jumped Tommy Lee. But opposed to them my relationship with VB has been a long lucky one.
But of course I’ve had to listen to my fellow programmers who called it a “toy language”. Well, in the beginning it pretty much was. But we’ve all heard “real” programmers say things like that forever. “You can’t do this in VB”, “VB is an interpreted language, you can’t even make real binaries with it”, “How silly it is that you need all those run-time files”… and so on forever and ever… The guys that complained the most was those that jumped on the Java train very early… and of course Java isn’t interpretated or needs a huge run-time does it? (I have nothing against Java, I use it often). Also other fellow C++ programmers wrote Windows application using MFC which of course also requires huge run-times.
So much of their ados just didn’t cut it. We have bin able to compile our VB programs to pure native code, creating the same kind of binaries as VC++ does, since version 5.
I admit that when it comes to speed, you can write C++ programs that runs much faster then a VB program. But in many cases that just doesn’t matter. For a regular desktop application, like a word processor, speed is not the main concern since your program will have more then enough time to process any input made by the user (what kind of computer runs slower then even the fastest of typewriters can type?). Today many applications use the Net, in which case the speed issue is in the network connections and server response times rather then in the execution of code.
Let’s compare another speed issue: The speed of development, to get what the customer wants delivered on time (nobody is going to pay you for two month extra work just so they will earn a few milliseconds in execution time). Well VB will be the winner here. There aren’t many C++ RAD (rapid application development) tools but some do exist, like Borland C++ builder that comes with a Form package much like VB.
So which is better the apple or the pear? Well, it first come down to taste but mainly what it comes down to is the usage. What will it be used for? I still does development in C++ when I need to. But that is actually not very often.
In VB takes one quarter of the time it takes in C++ to make an application. I made an application in VB at work (for work),(the system that we use now) that is quite big ~35000 lines (server + client), (and by the way Merri, I can manage it with no problem). I made it in my free time at work between the things I was supposed to do, and it took me about a 6 months to do (I still do maintenace for it). If I were to do the same thing in C++, I am SURE I would be still working on it
right now (it’s been a year and 3 months since I started it).well, i wrote two programs, with vb 6 and c++ (microsoft visual studio 6)
time it takes for c++ to count to 1000000000: 8.125 seconds
time it takes for VB to count to 1000000000 : 19.203 secondskinda dissapointing… but oh well.
here is the code, i tried to get everything exactly the same:Originally Posted by VIP3R
To put it simply, advanced programing can only be done in C++. Something as simple as keyboard hooks cannot be done in VBWhat do you consider to be advanced programming? I have no problem calling SetWindowsHookEx with WH_KEYBOARD_LL from VB to create a low level keyboard hook, or are you still using VB4?
Seriously though what do you guys think?
-
I think i just read a whole new batch of jargon lol
but yeah id be interewsted in learning some of this programming stuff.
-
Not sure if all developers have this philosophy but to me programming is like being a God of your own universe:
You are presented with the building blocks needed for creation, and only your imagination is the limiting factor - it is up to you how you shape everything how everything “looks” how it “feels” - make two applications designed to do exactly the same thing and neither of them will work the same way. Programmers are creators in their own right, and I guess respectively their programs are their art, it is unique to the ‘artist’.
Like every artist has a style every programmer has one too - this is why reading somebody else’s code is damn difficult guess it’s like handwriting, tis easy to read your own but a doctors for example?
I guess the whole point of this rant is, is that if you want to program you got to develop a certain amount of uniqueness and quirky, edgy thinking to your code - because thinking a way round a problem in your own way will damn sure save your ass one day. I’ve always found (through looking at code of somebody else’s) it is impossible to learn from or even to gain anything from somebody else’s code other than the basic syntax of a language - anything else wont make sense because your brain doesn’t work the same way that guy’s does…
This is why I have decided to teach you syntax as a first lesson, and from then on offer my code but also a list of pseudo code (code spoken in a way everyone will understand) that you can use to find your own way of doing things e.g.
Copy this file to here
create a directory herethere are a few ways of doing those two things but it’s up to you to pick a way your comfortable with and stick with it
Just thought I’d let you know my thoughts on the first lesson - unfortunately learning syntax is always boring and I doubt I can fit freelancer in but I’ll see what I can come up with…
-
Yes, you are right but I think to actually learn what the programming language syntax is possible to do, it helps a lot to look at code from strangers, because then you may learn about new techniques you wouldnt have considered possible and you may come up with your own unique approach.
Anyways, in terms of FLHook, milliseconds do matter, because FLHook is executed in the main worker thread, and no multithreading means any slowdown costs performance.
-
I guess the need for speed depends on what the program is doing. If any slow down can mean a network getting desynched, miliseconds are critical. If any slow down only means the user has to wait for a second more for his file to be parsed and saved, it isn’t as bad. Although… I’d say any speed increase is a good thing.
-
WHY OH WHY? do idiotic people feel the need to dishearten someone who has just graciously volunteered to do something, before he’s even started on it?! ::)
Shaddap, you lot!
I know a good bit of several assembly languages - but they are not what I’m looking for here. WANNA COMPARE NOTES WITH ME? OK, CHEW ON THIS - BURROUGHS ASSEMBLER, IBM 360/370/390 ASSEMBLER, ever heard of those even??!! ALGOL/60, ALGOL/70? PL/I? PL/II? REXX EVEN? YEAH, I’M OLD!! WHO CARES?!!
This thread is about VB/C#.NET! And I’m VERY interested even if you are not.
Stop wasting time and filling forum space here! This thread was started in a good cause. Wanna debate pros & cons? Do it somewhere else!
Jeeez!! What a bunch of time-wasters!
So - HazardFN, if you feel it would be better, just send me what you like privately, I appreciate your offer and I have no probs with whatever you decide to do, buddy. I am sure enough other sane STUDENTS will ask to be put on your mailing list to make it worth your while.
Grrrr!!!
StarTrader’s having another bad day!
-
Actually, I had quite a big discussion with Hazard the other day about the differences between both languages…. We didn’t really find a definite answer on whichever is better, but it was fun ;D
I hope he doesn’t take those replies badly and am totally waiting for those tutorials. Get going already!
-
Good luck finding a .NET compiler for Linux ::)
-
As for the all the posts, debates are fun even if FF did kick my ass in them lmao
but I appreciate the enthusiasm StarTrader - I already got some lesson notes down let me know what you think (that includes everyone)
Lesson 1
–-----------------
To teach you about variables, scope and string manipulation with a small amount of file management\manipulation I have decided to teach you how to decode an FL File and read the players name from it (as well as decode the name) alongside his money value and then encode it again!The topics that will be covered are:
-Basic Form Design and the Toolbox
-Coding Conventions (naming controls, lblMain and frmSplash etc.)
-Referencing a .NET DLL-Subroutines & Functions (how they work and differences)--------------------------------------------|
-Using that DLL in your code to decode a player file (easier than it all sounds believe me!)-| THESE 3 ARE LINKED
-Explanation of scope using the DLL as an example----------------------------------------------------Classes--------------------------------------------------------------------------------------------------------------|
-Why use a class?, why not put the subroutines/functions in the form code?---------------------|-------
-Using StreamReader Object from the .NET Framework to read from a file (EXTREMELY useful)|-How to use string manipulation to get the information you do want whilst deleting that which you don’t
-Loops and different kind of loops-Displaying that information in a label or any other medium you may choose
I’m not a great explainer of things but have tried really hard to think of easy explanations for everything that will be happening in my up and coming video tutorial, obviously these things take time - but tomorrow I should have some time spare to get most of it done…
-
You think? I thought it was the opposite
But in any case, I’ll always have some respect for VB.NET; I started non-web programming there (started programming in Java and Java is mostly web stuff). Plus, it seems like it did get some more features since I last checked it out, which is good.
Eagerly awaiting the rest of your tuts, I may learn a trick or two
-
One exists - its called mono, doesn’t support ALL .NET functions yet, think it is 3/4 of the way through completing .NET 2.0 then moving onto 3.5 - but yeah it does exist google Mono, Linux .NET
Oh man, you just saved my day just by replying to FF’s post ;D