Understanding the Linux Kernel, Third Edition
730 / 0

Understanding the Linux Kernel, Third Edition Ссылки

БончБруевич БончБруевич, Комментарии (нет)

In order to thoroughly understand what makes Linux tick and why it works so well on a wide variety of systems, you need to delve deep into the heart of the kernel. The kernel handles all interactions between the CPU and the external world, and determines which programs will share processor time, in what order. It manages limited memory so well that hundreds of processes can share the system efficiently, and expertly organizes data transfers so that the CPU isn't kept waiting any longer than necessary for the relatively slow disks.

The third edition of "Understanding the Linux Kernel" takes you on a guided tour of the most significant data structures, algorithms, and programming tricks used in the kernel. Probing beyond superficial features, the authors offer valuable insights to people who want to know how things really work inside their machine. Important Intel-specific features are discussed. Relevant segments of code are dissected line by line. But the book covers more than just the functioning of the code; it explains the theoretical underpinnings of why Linux does things the way it does.

292 / 0

Сбор исходной информации Изображения

БончБруевич БончБруевич, Комментарии (нет)

Итак, нам нужен фреймворк, который позволял бы быстро и удобно начинать разворачивать проект любой сложности с минимальными затратами времени на изучение возможностей и мануалов его работы.

Всенепременно - это свой фреймворк.

Основные возможности, которые должен предоставлять наш фреймворк:

1. Структурированное логическое разбиение кода
2. Возможность быстрого подключения кода через расширения (библиотеки, плагины)
3. Удобное конфигурирование движка и его модулей
4. Поддерживать MVC
5. Иметь удобные средства работы с записями из базы данных (ActiveRecord)
6. Наличие средств связывания объектов моделей данных и управления зависимостями в них
7. Поддержка событий и их обработчиков
8. Автоматическая генерация бэк-енда и таблиц базы данных по данным модели
9. Поддержка экстра полей для моделей ядром
10. Удобный шаблонизатор и система шаблонов-стилей
11. Легкое подключение ajax и других обработчиков
 
 
 
Pro Drupal Development, Second Edition
1173 / 0

Pro Drupal Development, Second Edition Ссылки

БончБруевич БончБруевич, Комментарии (нет)

Widely praised for its in–depth coverage of Drupal internals, bestselling Pro Drupal Development has been completely updated for Drupal 6 in this latest edition, and there are even more tricks of the trade to help you further yourself as a professional Drupal developer.

Assuming you already know how to install and bring a standard installation online, John K. VanDyk gives you everything else you need to customize your Drupal installation however you see fit. Pro Drupal Development, Second Edition delves deep into Drupal internals, showing you how to take full advantage of its powerful architecture.

What you’ll learn

  • Find out how to create your own modules, develop your own themes, and produce your own filters.
  • Learn the inner workings of each key part of Drupal, including user management, sessions, the node system, caching, and the various APIs available to you.
  • Discover how to optimize your Drupal installation to perform well under high–load situations.
  • Gain the knowledge needed to secure your Drupal installation and other best practice techniques.
  • Learn to integrate Ajax into and internationalize your Drupal web site.

Who is this book for?

Web developers maintaining and creating sites with Drupal. It is assumed that you already know the basics of Drupal and are able to install and bring up a basic installation. This book takes you deeper into the internals of Drupal and teaches how to tweak and modify it in order to create that perfect web site. Simply put, if you are working with Drupal, you need Pro Drupal Development, Second Edition.

 
 
 
Refactoring: Improving the Design of Existing Code
992 / 0

Refactoring: Improving the Design of Existing Code Ссылки

БончБруевич БончБруевич, Комментарии (нет)

As the application of object technology-particularly the Java programming language-has become commonplace, a new problem has emerged to confront the software development community. Significant numbers of poorly designed programs have been created by less-experienced developers, resulting in applications that are inefficient and hard to maintain and extend. Increasingly, software system professionals are discovering just how difficult it is to work with these inherited, "non-optimal" applications. For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs. Referred to as "refactoring," these practices have remained in the domain of experts because no attempt has been made to transcribe the lore into a form that all developers could use. . .until now. In Refactoring: Improving the Design of Existing Software, renowned object technology mentor Martin Fowler breaks new ground, demystifying these master practices and demonstrating how software practitioners can realize the significant benefits of this new process.

With proper training a skilled system designer can take a bad design and rework it into well-designed, robust code. In this book, Martin Fowler shows you where opportunities for refactoring typically can be found, and how to go about reworking a bad design into a good one. Each refactoring step is simple-seemingly too simple to be worth doing. Refactoring may involve moving a field from one class to another, or pulling some code out of a method to turn it into its own method, or even pushing some code up or down a hierarchy. While these individual steps may seem elementary, the cumulative effect of such small changes can radically improve the design. Refactoring is a proven way to prevent software decay.

In addition to discussing the various techniques of refactoring, the author provides a detailed catalog of more than seventy proven refactorings with helpful pointers that teach you when to apply them; step-by-step instructions for applying each refactoring; and an example illustrating how the refactoring works. The illustrative examples are written in Java, but the ideas are applicable to any object-oriented programming language.
 
 
 
Refactoring to Patterns
1027 / 0

Refactoring to Patterns Ссылки

БончБруевич БончБруевич, Комментарии (нет)

In 1994, Design Patterns changed the landscape of object-oriented development by introducing classic solutions to recurring design problems. In 1999, Refactoring revolutionized design by introducing an effective process for improving code. With the highly anticipated Refactoring to Patterns, Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.

This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.

 
 
 
Domain-Driven Design: Tackling Complexity in the Heart of Software
1013 / 0

Domain-Driven Design: Tackling Complexity in the Heart of Software Ссылки

БончБруевич БончБруевич, Комментарии (нет)

The software development community widely acknowledges that domain modeling is central to software design. Through domain models, software developers are able to express rich functionality and translate it into a software implementation that truly serves the needs of its users. But despite its obvious importance, there are few practical resources that explain how to incorporate effective domain modeling into the software development process.

Domain-Driven Design fills that need. This is not a book about specific technologies. It offers readers a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software development.

Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis--refactoring not just the code but the model underlying the code--in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:

  • Getting all team members to speak the same language
  • Connecting model and implementation more deeply
  • Sharpening key distinctions in a model
  • Managing the lifecycle of a domain object
  • Writing domain code that is safe to combine in elaborate ways
  • Making complex code obvious and predictable
  • Formulating a domain vision statement
  • Distilling the core of a complex domain
  • Digging out implicit concepts needed in the model
  • Applying analysis patterns
  • Relating design patterns to the model
  • Maintaining model integrity in a large system
  • Dealing with coexisting models on the same project
  • Organizing systems with large-scale structures
  • Recognizing and responding to modeling breakthroughs

With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.

 
 
 
The Pragmatic Programmer: From Journeyman to Master
1427 / 0

The Pragmatic Programmer: From Journeyman to Master Ссылки

БончБруевич БончБруевич, Комментарии (нет)

The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how to
  • Fight software rot;
  • Avoid the trap of duplicating knowledge;
  • Write flexible, dynamic, and adaptable code;
  • Avoid programming by coincidence;
  • Bullet-proof your code with contracts, assertions, and exceptions;
  • Capture real requirements;
  • Test ruthlessly and effectively;
  • Delight your users;
  • Build teams of pragmatic programmers; and
  • Make your developments more precise with automation.
Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.
 
 
 
Code Complete: A Practical Handbook of Software Construction
906 / 0

Code Complete: A Practical Handbook of Software Construction Ссылки

БончБруевич БончБруевич, Комментарии (нет)

For more than a decade, Steve McConnell, one of the premier authors and voices in the software community, has helped change the way developers write code--and produce better software. Now his classic book, CODE COMPLETE, has been fully updated and revised with best practices in the art and science of constructing software. Whether you're a new developer seeking a sound introduction to the practice of software development or a veteran exploring strategic new approaches to problem solving, you'll find a wealth of practical suggestions and methods for strengthening your skills. Topics include design, applying good techniques to construction, eliminating errors, planning, managing construction activities, and relating personal character to superior software. This new edition features fully updated information on programming techniques, including the emergence of Web-style programming, and integrated coverage of object-oriented design. You'll also find new code examples--both good and bad--in C++, Microsoft(r) Visual Basic(r), C#, and Java, though the focus is squarely on techniques and practices.
 
 
 
Clean Code: A Handbook of Agile Software Craftsmanship
1108 / 0

Clean Code: A Handbook of Agile Software Craftsmanship Ссылки

БончБруевич БончБруевич, Комментарии (нет)

Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.

Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.

What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.

Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.

Readers will come away from this book understanding
  • How to tell the difference between good and bad code
  • How to write good code and how to transform bad code into good code
  • How to create good names, good functions, good objects, and good classes
  • How to format code for maximum readability
  • How to implement complete error handling without obscuring code logic
  • How to unit test and practice test-driven development
This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.
 
 
 
Website Optimization
1100 / 0

Website Optimization Ссылки

БончБруевич БончБруевич, Комментарии (нет)

Is your site easy to find, simple to navigate, and enticing enough to convert prospects into buyers? Website Optimization shows you how. It reveals a comprehensive set of techniques to improve your site's performance by boosting search engine visibility for more traffic, increasing conversion rates to maximize leads and profits, revving up site speed to retain users, and measuring your site's effectiveness (before and after these changes) with best-practice metrics and tools.

Remember when an optimized website was one that merely didn't take all day to appear? Times have changed. Today, website optimization can spell the difference between enterprise success and failure, and it takes a lot more know-how to achieve success.

This book is a comprehensive guide to the tips, techniques, secrets, standards, and methods of website optimization. From increasing site traffic to maximizing leads, from revving up responsiveness to increasing navigability, from prospect retention to closing more sales, the world of 21st century website optimization is explored, exemplified and explained.

Website Optimization combines the disciplines of online marketing and site performance tuning to attain the competitive advantage necessary on today's Web. You'll learn how to improve your online marketing with effective paid and natural search engine visibility strategies, strengthened lead creation and conversion to sales methods, and gold-standard ad copywriting guidelines. Plus, your increased site speed, reduced download footprint, improved reliability, and improved navigability will work synergistically with those marketing methods to optimize your site's total effectiveness.

In this book for business and IT managers, author Andrew King, president of Website Optimization, LLC, has assembled experts in several key specialties to teach you:

  • Search engine optimization -- addressing best (and worst) practices to improve search engine visibility, including step-by-step keyword optimization guidelines, category and tag cloud creation, and guerilla PR techniques to boost inbound links and improve rankings
  • Pay-per-click optimization -- including ad copywriting guidelines, setting profit-driven goals, calculating and optimizing bids, landing page optimization, and campaign management tips
  • Optimizing conversion rates -- increasing leads with site landing page guidelines, such as benefit-oriented copy, credibility-based design, value hierarchies, and tips on creating unique selling propositions and slogans
  • Web performance tuning -- optimizing ways to use (X)HTML, CSS, and Ajax to increase speed, reduce your download footprint, and increase reliability
  • Advanced tuning -- including client-side techniques such as on-demand content, progressive enhancement, and inline images to save HTTP requests. Plus server-side tips include improving parallelism, using cache control, browser sniffing, HTTP compression, and URL rewriting to remap links and preserve traffic
  • Web metrics -- illustrating the best metrics and tools to gather details about visitors and measure web conversion and success rates. Covering both search marketing metrics and web performance measures including Pathloss and waterfall graphs

Website Optimization not only provides you with a strategy for success, it also offers specific techniques for you and your staff to follow. A profitable website needs to be well designed, current, highly responsive, and optimally persuasive if you're to attract prospects, convert them to buyers, and get them to come back for more. This book describes precisely what you need to accomplish to achieve all of those goals.

 
 
 
Beginning Game Development with Python and Pygame
1316 / 0

Beginning Game Development with Python and Pygame Ссылки

alex alex, Комментарии (нет)

Like music and movies, video games are rapidly becoming an integral part of our lives. Over the years, you’ve yearned for every new gaming console, mastered each blockbuster within weeks after its release, and have even won a local gaming competition or two. But lately you’ve been spending a lot of time thinking about a game idea of your own, or are exploring the possibility of making a career of this vibrant and growing industry. But where should you begin?

Beginning Game Development with Python and Pygame is written with the budding game developer in mind, introducing games development through the Python programming language and the popular Pygame games development library. Authored by industry veteran and Python expert Will McGugan, who most recently worked on the MotorStorm game for Play Station 3, you’ll be privy to insights that will not only help you to exploit PyGame to its maximum potential, but also make you a more creative and knowledgeable games developer all round.

* Create advanced games by taking advantage of the popular open source Python programming language and Pygame games development library.
* Learn step-by-step through the creation of a real-world game (tank warfare), involving gaming preferences, sound, visual effects, and joystick/keyboard interaction.
* Discover the concepts that are crucial to success in today’s gaming industry, such as support for multiple platforms, and granting users the ability to extend and customize your games.

What you’ll learn

* Take advantage of Python and the Pygame library to build compelling cross-platform games.
* Learn to best use these technologies to turn your dream game into reality.
* Create professional games by accounting for sound, special effects, and user interaction through the joystick and keyboard.
* Build both two- and three-dimensional games, and learn more about the factors that contribute to choosing one approach over the other.
* Provide users with the means for extending your games through level creation and custom modifications as a means to build a vibrant community around your product.
* Package your games in a manner that allows even novice computer users to install, use, and update your games with ease.

 
 
 
Cross-Platform GUI Programming with wxWidgets
2200 / 0

Cross-Platform GUI Programming with wxWidgets Ссылки

БончБруевич БончБруевич, Комментарии (нет)

  • Build advanced cross-platform applications that support native look-and-feel on Windows, Linux, UNIX, Mac OS X, even Pocket PC
  • Master wxWidgets, from start to finish - even if you've never built GUI applications before
  • Leverage advanced wxWidget capabilities: networking, multithreading, data structures, and more
  • CD-ROM: extensive library of development tools, source code, and sample applications

    Cross-Platform GUI Programming with wxWidgets is the best way for beginning developers to learn wxWidgets programming in C++, and is a valuable resource for experienced wxWidgets programmers looking to expand their skills. This book is a must-have for programmers thinking of using wxWidgets and those already using it.


  • Другие страницы