| | Over the last few days, I've started looking at fundamentals particularly in C initially about memory allocation in small bite sized blog entries. Even in C++ or C# this is still useful to know. Although .NET runs managed code, data structures are still ultimately dependent on hardware so a bit of knowledge may come in useful even though you're not supposed to need it. I'm back working on tutorials and reviews and will be publishing new ones shortly. Have a Great Week! | | Running Your own Forge Some of the software that I use is not written in C, C++ or C#. That's not really a big surprise as some of it is web based and more likely to be in PHP. I don't generally care what it's written in so long as I'm not modifying it. There are many useful open source packages written in PHP, such as the Mediawiki PHP software used in Wikipedia etc, WordPress etc! If you are developing multiple projects, say at school or college then you might find CodingTeam of interest. It's in PHP, so web based and lets you run your own Forge (like SourceForge etc). It's currently used by over 1,300 users and 300 projects. An alternative is http://sharesource.org/ (637 Projects, 1323 users) and it's good to see that both these forge systems are interoperable through an evolving standard OpenForge whose website uses the same MediaWiki that I mentioned. You will of course need a web server to run this software. It could be IIS running on your Windows PC or if you have a Linux box then the LAMP standard (Apache + PHP/MySQL) is pretty good. I taught myself to use Linux when I bought a new Windows PC by installing Ubuntu server on my old PC. If you go down this route, my personal recommendation is to also install Webmin as it simplifies a lot of the server administration. | Thinking About Fundamentals Having learned assembly language the hard way by writing code, I suppose C has always been straight forward for me. I like to think in low level terms and understanding it helps me with my coding. Lets consider an array which is just a block of memory locations all located next to each other. If it's a single dimension array that's 64 bytes long, perhaps an array of char then it can hold 64 chars (63 if it's a string in C with the last one a terminating '\0'.. It could hold a chess or chequers board as a 2 dimension array of 8 x 8 chars. It could be an array of 16 ints on a 32 bit computer where each int occupies 4 bytes. It could even hold a 4 x 4 x 4 array of chars, representing three dimensions. My point is that as you get nearer to the hardware, programming in assembly language or C, you can think of the variables as just blocks of memory. With higher level languages like C#, the same is true but behind the scenes .NET manages all of the memory allocation and you shouldn't think quite the same way. For c and simple C++ programming thinking in terms of blocks of memory can be helpful. | Text Processing and Summarizing I've been using writing tools for the last 30 years since WordStar on a SuperBrain in 1980. Text processing is one of those academic areas where much goes on and occasionally surfaces into the real world. One such area is Text summarizing. I've been a registered user of the commercial product Copernic Summarizer for several years. Bolton's 2nd law is: "That for every commercial application there is almost always an equal and opposing open source application". In this case Open Text Summarizer (OTS), written in C is used in open source software like Abi-Word and Gnome-Summarizer as well as the command line utility OTS in many Linux distributions. A Windows version (and VC6 compilable source code is also provided). | Code Library for C, Objective-C, C++ and C# This is the code library with all examples, free downloads for this topic. | | | | C / C++ / C# Ads | | | | Featured Articles | | | | | More from About.com | | | | | | Plan a Unique Vegas Wedding The minister, music and champagne are just the beginning -- why not get married aboard a helicopter or have a pirate swing in to deliver your rings? Arrrr! More>
| | | | Join About.com's User Panel! Share your opinions and help us make About.com more relevant, informative and enjoyable to use. More>
| | | | | Sign up for more free newsletters on your favorite topics | | | | You are receiving this newsletter because you subscribed to the About C / C++ / C# newsletter. If you wish to change your email address or unsubscribe, please click here. About respects your privacy: Our Privacy Policy Contact Information: 249 West 17th Street New York, NY, 10011 © 2010 About.com | | | | | Must Reads | | Advertisement | |
No comments:
Post a Comment