Welcome to David Gholami's web links
This site is for people interested in software development.
Danny Kalev. “Implementing the Singleton Design Pattern.” DevX August 10, 2000.
Fawcette Technical Publications. 30 Jan., 20001 <http://www.inquiry.com/techtips/cpp_pro/10min/10min0200.asp >
This article explains how to design a class to have only one instance of it throughout the application. Also explains why a second instance should not be allowed both on stack and from heap. The Singleton design pattern solves this very problem. It goes in detail how to implement the singleton pattern in C++ and explain how to optimize its design for single-threaded applications and it’s uses: a GUI application must have a single mouse, an active modem needs one and only one telephone line, an operating system can only have one window manager, and a PC is connected to a single keyboard. This is mainly for novice programmers just starting out.
Eckel, Bruce. Thinking in C++ Volume One : Introduction to Standard C++.
Upper Saddle River, New Jersey: Pearson Hall Inc, 2000
The second edition is fully revised and beefed up with plenty of new material on today's Standard C++, it is an excellent tutorial to mastering this rich programming language, filled with expert advice and written in a patient, knowledgeable style. The effective presentation, along with dozens of helpful code examples, make this book a standout. The text first sets the stage for using C++ with a tour of what object-oriented programming is all about, as well as the software design life cycle. The author then delves into every aspect of C++, from basic keywords and programming principles to more advanced topics, like function and operator overloading, virtual inheritance, exception handling, namespaces, and templates. C++ is a complex language, and the author covers a lot of ground using today's Standard C++, but without getting bogged down in excessive detail. It starts out so any one, even with someone with no programming knowledge, can start writing effective code.
Gamma, Erich, et al. Design Patterns: Elements of Reusable Object-Oriented Software.
Reading, Massachusetts: Addison-Wesley, 1999
This book really is a challenging way of thinking about
object-oriented design. The idea is that when designing a new class hierarchy,
though implementation details may differ, you often find yourself using the same
kinds of solutions over and over again. Rather than approaching each design task
out of context as an individual, isolated problem, the strategy is to study the
task and identify the underlying design pattern most likely to be applicable,
and follow the class structure outlined by that pattern. It's a "cookbook"
school of design that works amazingly well. The book looks at 23 of the most
common patterns and presents them in detail. The book also names the patterns it
uses, and so gives programmers a common vocabulary to describe design concepts,
rather than particular implementations. This is one of the few books that I
think belongs on every programmer's "must-have" list. Not to overuse a cliché,
but like object-oriented design itself, the pattern concept is one of those rare
paradigm-shifts in computer programming. It is equally valuable to expert
professional and novice student alike.
W.J. Gilmore. “ Optimizing MySQL.” DevShed - The Open Source Web Development
January 29, 2001. ngenuity. 30 Jan., 2001 <http://www.devshed.com/Server_Side/MySQL/Optimize/>
This article goes in depth about database optimization, and involves the analysis of several different facets of both system hardware and the database system. It discusses those facets of optimizing a MySQL server that relate directly to its compilation, configuration and subsequent administration. This is very useful for anyone interesting in databases, and, or database development. Also it is a very good article for webmasters, dba, and sysadmins. It gathers the lot of spread-out information and condenses it into practically useful points to check and do.