   Project Structure
  I am actually quite new to software development (3yrs) and I have a big question regarding the overall project structure and file distribution.I received a team member from another development team in our company as reinforcement (he has >6yrs dev experience (so much more than me)).The problem/question is, he always creates classes and put the source files into every project where he needs them. This means a copy of all class files in this project. My idea was to put it into a lib/dll to use it. Especially the synchronization is much easier. Because I can update the lib/dll code and all projects would receive the change.Am I wrong and will I understand this decision in the future??(I actually always move the files then into a dll/lib to make my life easier, but this takes time)   
  It kind of depends -- If the files represent common functionality that doesn't change form from project to project, then yes it should definitely be packaged up in a library. If, on the other hand, the files represent common functionality that is frequently modified to suite the application at hand, then you shouldn't try to package it up in its current form and usage model. If the second case is true, however, a hard look should be taken at *why* the code is modified with each project, and steps should be taken, if possible, to move to a single common and robust form. With that accomplished, a library can be created.In all likelihood, if the form is not changing from project to project, the developer is either too lazy to make it a lib, doesn't know how, or assumes it to be more difficult than it is.   ;  Actually the files stay the same, the classes are used in several places and won't change from project to project.Maybe laziness, because making a lib is basic knowledge.Thanks,tgar   