473,654 Members | 3,190 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Good development practices

Hello,

I have done some programming, mostly on embedded systems but now I would
feel like I have to learn good development practices (i.e programmer's
good manners). Let's say I want to build an application using some
established open source library or application. Do I just download the
source and hack away? Or I'd better do it in some controlled manner, i.e
set up some source control system so that I can always compute the diffs
from the original code? Or maybe I should try to keep my changes
separate from the original code base? How do I do it?

Where do I learn about things like that? I'm sorry for asking this here,
where we dicuss standard-compliant C/C++ programming, but I really don't
know any other place now. I do program in C/C++.

Regards,
Nickolai Leschov
Jan 17 '08 #1
29 2320
Nickolai Leschov wrote:
[..] I
would feel like I have to learn good development practices [..]

Where do I learn about things like that? I'm sorry for asking this
here, where we dicuss standard-compliant C/C++ programming, but I
really don't know any other place now. I do program in C/C++.
news:comp.sofwa re-eng.

V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Jan 17 '08 #2
On Jan 17, 2:03 pm, Nickolai Leschov <nlesc...@gmail .comwrote:
Hello,
Hi, Nickolai

[snip]
Where do I learn about things like that? I'm sorry for asking this here,
where we dicuss standard-compliant C/C++ programming, but I really don't
know any other place now. I do program in C/C++.
OK, first thing is to recognize that there is no such thing as
"standard-compliant C/C++ programming", because there is no standard
that defines something called "C/C++".

However, there /are/ standards for the C language, and /different/
standards for the C++ language. You are going to have to choose which
language you want to learn about wrt "standard-compliant" programming.
If you are planning to program in /both/ C and C++, you'll have to
learn both standards, and a bunch of things about inter-language calls
(which, IIRC, the C++ standard talks about, but the C standard does
not).

Having said all that, neither comp.lang.c nor comp.lang.c++ seem to me
to be the best place to discuss the theory of "standard-compliant
programming". Both of these newsgroups discuss the practice of
"standard-compliant programming", and try to leave the theory to other
groups.

HTH
--
Lew

Jan 17 '08 #3

"Lew Pitcher" <lp******@teksa vvy.comwrote in message
>
OK, first thing is to recognize that there is no such thing as
"standard-compliant C/C++ programming", because there is no standard
that defines something called "C/C++".
Standards-compilant C/C++ would be a language that anyone would call C, or C
with a few twiddles, but actually conforms to the C++ standard.
Many thousands of such programs are written.

--
Free games and programming goodies.
http://www.personal.leeds.ac.uk/~bgy1mm

Jan 17 '08 #4
Malcolm McLean wrote:
>
"Lew Pitcher" <lp******@teksa vvy.comwrote in message
>>
OK, first thing is to recognize that there is no such thing as
"standard-compliant C/C++ programming", because there is no standard
that defines something called "C/C++".
Standards-compilant C/C++ would be a language that anyone would call C,
or C with a few twiddles, but actually conforms to the C++ standard.
Many thousands of such programs are written.
Or a language that anyone would call C++, or C++ with a few twiddles,
but actually conforms to the C standard. Many thousands of such
programs are written.

Your parochialism is showing. The fact is that there is no C/C++
language, and no standard to conform to. Not to bother with the obvious
point that the expression 'C/C++' is a violation of the standards of
either C or C++.

Jan 17 '08 #5
Nickolai Leschov a écrit :
Hello,

I have done some programming, mostly on embedded systems but now I would
feel like I have to learn good development practices (i.e programmer's
good manners). Let's say I want to build an application using some
established open source library or application. Do I just download the
source and hack away? Or I'd better do it in some controlled manner, i.e
set up some source control system so that I can always compute the diffs
from the original code? Or maybe I should try to keep my changes
separate from the original code base? How do I do it?

Where do I learn about things like that? I'm sorry for asking this here,
where we dicuss standard-compliant C/C++ programming, but I really don't
know any other place now. I do program in C/C++.
You can learn some of it from de Herb Sutter and Andrei Alexandrescu:
http://www.amazon.fr/Coding-Standard.../dp/0321113586

Michael
Jan 18 '08 #6
Victor Bazarov wrote:
news:comp.sofwa re-eng.

Thank you. I'm subscribing.
Jan 18 '08 #7
Lew Pitcher wrote:
>
OK, first thing is to recognize that there is no such thing as
"standard-compliant C/C++ programming", because there is no standard
that defines something called "C/C++".

However, there /are/ standards for the C language, and /different/
standards for the C++ language. You are going to have to choose which
language you want to learn about wrt "standard-compliant" programming.
Yes, I know what is C and what is C++, they are different languages, I
just wrote "C/C++" to save time, not because I think they are the same
or something like that.
Please don't be so pedantic. You know what I meant, don't you?

My question is about good practices applicable to both C and C++,
(that's why I post this to both newsgroups) with emphasis on "good
practices", not "C/C++"
Having said all that, neither comp.lang.c nor comp.lang.c++ seem to me
to be the best place to discuss the theory of "standard-compliant
programming".
This is the term I used to name the topic of discussions in this
newsgroup is I see it. I mean programming in the language, not specific
implementation.

Jan 18 '08 #8
On Jan 18, 11:01 am, Nickolai Leschov <nlesc...@gmail .comwrote:
Lew Pitcher wrote:
OK, first thing is to recognize that there is no such thing as
"standard-compliant C/C++ programming", because there is no standard
that defines something called "C/C++".
However, there /are/ standards for the C language, and /different/
standards for the C++ language. You are going to have to choose which
language you want to learn about wrt "standard-compliant" programming.

Yes, I know what is C and what is C++, they are different languages, I
just wrote "C/C++" to save time, not because I think they are the same
or something like that.
Please don't be so pedantic. You know what I meant, don't you?
Actually, no we did not know that.
There are just too many people about who really think that there is a
language called "C/C++" to assume that a poster knows about the
distinction between C and C++ when he uses the term C/C++.

And if you can't stand pedantery, comp.lang.c and comp.lang.c++ will
not meet your tastes, because they are full of it.

To answer your original questions:
- Using source control is always a good idea. Agood source control
system lets you easily find out when and why certain changes were
made. This I use often in finding the cause of bugs that I try to
solve.
- When writing an application that uses third-party software (open
source or not), you should regard the third-party software as 'read-
only'.
Even if you are allowed to, writing your application intermixed with
library code is likely to break all sorts of things. In the very
least, it breaks the principle of modularity.

Bart v Ingen Schenau
Jan 18 '08 #9
Bart van Ingen Schenau wrote:
On Jan 18, 11:01 am, Nickolai Leschov <nlesc...@gmail .comwrote:
>Lew Pitcher wrote:
OK, first thing is to recognize that there is no such thing as
"standard-compliant C/C++ programming", because there is no standard
that defines something called "C/C++".
However, there /are/ standards for the C language, and /different/
standards for the C++ language. You are going to have to choose which
language you want to learn about wrt "standard-compliant" programming.

Yes, I know what is C and what is C++, they are different languages, I
just wrote "C/C++" to save time, not because I think they are the same
or something like that.
Please don't be so pedantic. You know what I meant, don't you?

Actually, no we did not know that.
There are just too many people about who really think that there is a
language called "C/C++" to assume that a poster knows about the
distinction between C and C++ when he uses the term C/C++.
[snip]

I think your claim is plain false. I never met someone who "really think(s)
that there is a language called 'C/C++'". Also, I have never encountered
the case that a poster using "C/C++" reacted with even the slightest amount
of surprise when informed that there is no language that goes by the
name "C/C++". I wonder if there are, say, three threads from the archive
where it actually transpires that a poster thaught there is a language
called "C/C++". Could you quote even one? (Maybe, there is a difference in
comp.lang.c and comp.lang.c++. My observation is based upon the C++ group.
So, it could be possible that the C forum is teeming with posters who
actually think C/C++ does name a language.)

All that I have observed is that there are some people who regularly
_pretend_ that those using the phrase "C/C++" do refer to some language of
that name. That joke was funny the first time I saw it, but it wears off
over the years.
Best

Kai-Uwe Bux

ps.: Come to think of it, maybe there is a C/C++ language. I think Comeau
offers a compiler for that one :-)
Jan 18 '08 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

24
3579
by: matty | last post by:
Go away for a few days and you miss it all... A few opinions... Programming is a craft more than an art (software engineering, not black magic) and as such, is about writing code that works, first and foremost. If it works well, even better. The same goes for ease of maintenance, memory footprint, speed, etc, etc. Most of the time, people are writing code for a use in the *real world*, and not just as an academic exercise. Look at...
10
2027
by: KN | last post by:
I know both are pretty much the same and it comes down to personal choice. But I have to make the choice for the team. Things so far that I am considering 1. XML documentation in C# -- thats good.. not there in VB.net?? 2. Some language features of VB.Net like Redim(makes it easier for developers), but not good enough reason. 3. C# is in more like standard languages and key words used are more
217
9115
by: gyromagnetic | last post by:
The following url points to an article written by Damian Conway entitled "Ten Essential Development Practices": http://www.perl.com/pub/a/2005/07/14/bestpractices.html Althought the article has Perl as a focus, I thought that some of the general points made might be of interest to the Python community. It would certainly be interesting to put together an analogous version of this article that centers on Python. Best Regards,
59
4980
by: Alan Silver | last post by:
Hello, This is NOT a troll, it's a genuine question. Please read right through to see why. I have been using Vusual Basic and Classic ASP for some years, and have now started looking at ASP.NET. At first glance, it looks excellent, albeit nothing that couldn't have been done to Classic ASP. I have been through a few tutorials and was impressed with how quickly you can get database info onto a page.
2
1811
by: Amelyan | last post by:
Could anyone recommend a book (or a web site) that defines best practices in ASP.NET application development? E.g. 1) Precede your control id's with type of control btnSubmit, txtName, etc. 2) Group relevant .aspx files into subfolders within your project etc.
4
2613
by: Collin Peters | last post by:
I have searched the Internet... but haven't found much relating to this. I am wondering on what the best practices are for migrating a developmemnt database to a release database. Here is the simplest example of my situation (real world would be more complex). Say you have two versions of your application. A release version and a development version. After a month of developing you are ready to release a new version. There have...
1
1651
by: Pablo | last post by:
Hello all, Hope today finds you well. I'm looking to take my knowledge of best practices within the development lifecycle to the next level. Basically I want to follow industry recognised, Microsoft approved practices for every aspect of the lifecycle - so planning and architecture, team development, testing procedures, change control and bug-tracking, version control - etc etc. What software to use, which
2
1767
by: dotnet dude | last post by:
What boook do you guys recommend for somebody with the software development backgroud who wants to get started from scratch with the designing of good sofware application. I am interested in understanding how the logical and physical design of a software is prepared. Details about the design patterns and the application blocks; and how and when they should be used. I would really appreciate if you guys can recommend some good boook that...
29
1527
by: Nickolai Leschov | last post by:
Hello, I have done some programming, mostly on embedded systems but now I would feel like I have to learn good development practices (i.e programmer's good manners). Let's say I want to build an application using some established open source library or application. Do I just download the source and hack away? Or I'd better do it in some controlled manner, i.e set up some source control system so that I can always compute the diffs from...
0
8816
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8709
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
7309
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6162
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5627
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4150
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4297
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2719
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
1597
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.