欢迎来到相识电子书!
标签:编程
-
Exceptional C++ Style
Software "style" is about finding the perfect balance between overhead and functionality...elegance and maintainability...flexibility and excess. In Exceptional C++ Style, legendary C++ guru Herb Sutter presents 40 new programming scenarios designed to analyze not only the what but the why and help you find just the right balance in your software. Organized around practical problems and solutions, this book offers new insight into crucial C++ details and interrelationships, and new strategies for today's key C++ programming techniques--including generic programming, STL, exception safety, and more. You'll find answers to questions like: * What can you learn about library design from the STL itself? * How do you avoid making templated code needlessly non-generic? * Why shouldn't you specialize function templates? What should you do instead? * How does exception safety go beyond try and catch statements? * Should you use exception specifications, or not? * When and how should you "leak" the private parts of a class? * How do you make classes safer for versioning? * What's the real memory cost of using standard containers? * How can using const really optimize your code? * How does writing inline affect performance? * When does code that looks wrong actually compile and run perfectly, and why should you care? * What's wrong with the design of std::string? Exceptional C++ Style will help you design, architect, and code with style--and achieve greater robustness and performance in all your C++ software. -
User Interface Design for Programmers
Most programmers' fear of user interface (UI) programming comes from their fear of doing UI design. They think that UI design is like graphic designthe mysterious process by which creative, latte-drinking, all-black-wearing people produce cool-looking, artistic pieces. Most programmers see themselves as analytic, logical thinkers insteadstrong at reasoning, weak on artistic judgment, and incapable of doing UI design. In this brilliantly readable book, author Joel Spolsky proposes simple, logical rules that can be applied without any artistic talent to improve any user interface, from traditional GUI applications to websites to consumer electronics. Spolkys primary axiom, the importance of bringing the program model in line with the user model, is both rational and simple. In a fun and entertaining way, Spolky makes UI design easy for programmers to grasp. After reading User Interface Design for Programmers, you'll know how to design interfaces with the user in mind. You'll learn the important principles that underlie all good UI design, and you'll learn how to perform usability testing that works. -
C++ Primer Plus
If you are new to C++ programming, C++ Primer Plus, Fifth Edition is a friendly and easy-to-use self-study guide. You will cover the latest and most useful language enhancements, the Standard Template Library and ways to streamline object-oriented programming with C++. This guide also illustrates how to handle input and output, make programs perform repetitive tasks, manipulate data, hide information, use functions and build flexible, easily modifiable programs. With the help of this book, you will: * Learn C++ programming from the ground up. * Learn through real-world, hands-on examples. * Experiment with concepts, including classes, inheritance, templates and exceptions. * Reinforce knowledge gained through end-of-chapter review questions and practice programming exercises. C++ Primer Plus, Fifth Edition makes learning and using important object-oriented programming concepts understandable. Choose this classic to learn the fundamentals and more of C++ programming. -
ANSI Common Lisp
For use as a core text supplement in any course covering common LISP such as Artificial Intelligence or Concepts of Programming Languages. Teaching students new and more powerful ways of thinking about programs, this text contains a tutorial-full of examples-that explains all the essential concepts of Lisp programming, plus an up- to-date summary of ANSI Common Lisp, listing every operator in the language. Informative and fun, it gives students everything they need to start writing programs in Lisp both efficiently and effectively, and highlights such innovative Lisp features as automatic memory management, manifest typing, closures, and more. -
Accelerated C++
Want to learn how to program in C++ immediately? Want to start writing better, more powerful C++ programs today? Accelerated C++'s uniquely modern approach will help you learn faster and more fluently than you ever believed possible. Based on the authors' intensive summer C++ courses at Stanford University, Accelerated C++ covers virtually every concept that most professional C++ programmers will ever use -- but it turns the "traditional" C++ curriculum upside down, starting with the high-level C++ data structures and algorithms that let you write robust programs immediately. Once you're getting results, Accelerated C++ takes you "under the hood," introducing complex language features such as memory management in context, and explaining exactly how and when to use them. From start to finish, the book concentrates on solving problems, rather than learning language and library features for their own sake. The result: You'll be writing real-world programs in no time -- and outstanding code faster than you ever imagined. -
C++编程思想第2卷
《C++编程思想(第2卷)(实用编程技术)》介绍C++实用的编程技术和最佳的实践方法,深入探究了异常处理方法和异常安全设计;介绍C++的字符串、输入输出流、STL算法、容器和模板的现代用法,包括模板元编程;解释多重继承问题的难点,展示RTTI的实际使用,描述了典型的设计模式及其实现,特别介绍被认为是标准C++下一版特征之一的多线程处理编程技术,并提供了最新的研究成果。《C++编程思想》(第2卷)适合作为高等院校计算机及相关专业的本科生、研究生的教材,也可供从事软件开发的研究人员和科技工作者参考。 海报: -
3D游戏编程大师技巧
《3D 游戏编程大师技巧》是游戏编程畅销书作者André LaMothe的扛鼎之作,从游戏编程和软件引擎的角度深入探讨了3D图形学的各个重要主题。全书共分5部分,包括16章的内容。第1~3章简要地介绍了Windows和DirectX编程,创建了一个Windows应用程序模板,让读者能够将精力放在游戏逻辑和图形实现中,而不用考虑Windows和DirectX方面的琐事;第4~5章简要地介绍了一些数学知识并实现了一个数学库,供以后编写演示程序时使用;第6章概述了3D图形学,让读者对《3D 游戏编程大师技巧(附光盘)》将介绍的内容有大致的了解;第7~11章分别介绍了光照、明暗处理、仿射纹理映射、3D裁剪和深度缓存等内容;第12~14章讨论了高级3D渲染技术,包括透视修正纹理映射、Alpha混合、1/z缓存、纹理滤波、空间划分和可见性算法、阴影、光照映射等;第15~16章讨论了动画、运动碰撞检测和优化技术。 《3D 游戏编程大师技巧》适合于有一定编程经验并想从事游戏编程工作或对3D图形学感兴趣的人员阅读。 -
ML程序设计教程
本书是关于ML程序设计的经典教材,详细介绍如何使用 ML语言进行程序设计,并讲解函数式程序设计的基本原理。 书中含有大量例子,涵盖了排序、矩阵运算、多项式运算等方面。大型的例子包括一个一般性的自顶向下语法分析器、一个一演算归约程序和一个定理证明机。书中也讲述了关于数组、队列、优生队列等高效的函数式实现,并且有一章专门讨论函数式程序的形式论证。本书的代码均可以从作者网站(http://www.cl.cam.ac.uk/users/lcp/)得到。 本书详细讲解如何使用ML语言进行程序设计,并介绍函数式程序设计的基本原理。书中特别讲述了为ML的修订版所设计的新标准库的主要特性,并且给出大量例子,涵盖排序、矩阵运算、多项式运算等方面。大型的例子包括一个一般性的自顶向下语法分析器、一个l-演算归约程序和一个定理证明机。书中也讲述了关于数组、队列、优先队列等高效的函数式实现,并且有一章专门讨论函数式程序的形式论证。 本书可作为高等院校计算机专业相关课程的教材,也适合广大程序设计人员参考。 -
Effective C++
“c++程序员可以分成两类,读过effective c++的和没读过的。”世界顶级c++大师scott meyers这部成名之作,与这句话一道在全球无数读者间广为传颂。几乎所有c++书籍推荐名单上﹐《effective c++:改善程序与设计的55个具体做法:第3版》都会位列三甲。作者高超的技术把握力、独特的视角﹑诙谐轻松的写作风格﹑独具匠心的内容组织﹐都受到极大的推崇和仿效。 对于国外技术图书,选择翻译版还是影印版,常让人陷入两难。本评注版力邀国内资深专家执笔,在英文原著基础上增加中文点评与注释,旨在融合二者之长,既保留经典的原创文字与味道,又以先行者的学研心得与实践感悟,对读者阅读与学习加以点拨、指明捷径。 经过评注的版本,更值得反复阅读与体会。希望这《effective c++:改善程序与设计的55个具体做法:第3版》能够帮助您跨越c++的重重险阻,领略高处才有的壮美风光,做一个成功而快乐的c++程序员。 -
我的第一本C++书
每一个渴望学习C++语言的初学者都希望能够有一本全面的,实用的,同时又是生动有趣的入门书。这本入门书可以告诉这些初学者,整个C++世界有哪些内容构成,应该按照怎样的路径进行学习探索,用C++进行程序设计应该具有怎样的设计思想,同时,又如何在实践中运用这些学到的知识。可以说,这本书基本上囊括了每个C++初学者都应该了解的所有知识,从C++的基础知识到面向对象思想,从设计模式到STL标准模板库,从Windows系统下的开发到Linux/嵌入式系统下的开发,再到最后的项目管理知识。当一位C++初学者完成本书的学习后,他基本上浏览了C++的整个世界,可以独立地以C++进行应用开发了。 -
API Design for C++
The design of application programming interfaces can affect the behavior, capabilities, stability, and ease of use of end-user applications. With this book, you will learn how to design a good API for large-scale long-term projects. With extensive C++ code to illustrate each concept, API Design for C++ covers all of the strategies of world-class API development. Martin Reddy draws on over fifteen years of experience in the software industry to offer in-depth discussions of interface design, documentation, testing, and the advanced topics of scripting and plug-in extensibility. Throughout, he focuses on various API styles and patterns that will allow you to produce elegant and durable libraries. The only book that teaches the strategies of C++ API development, including design, versioning, documentation, testing, scripting, and extensibility. Extensive code examples illustrate each concept, with fully functional examples and working source code for experimentation available online. Covers various API styles and patterns with a focus on practical and efficient designs for large-scale long-term projects. -
高性能JavaScript
如果你使用JavaScript构建交互丰富的Web应用,那么JavaScript代码可能是造成你的Web应用速度变慢的主要原因。《高性能JavaScript》揭示的技术和策略能帮助你在开发过程中消除性能瓶颈。你将会了解如何提升各方面的性能,包括代码的加载、运行、DOM交互、页面生存周期等。雅虎的前端工程师Nicholas C. Zakas和其他五位JavaScript专家介绍了页面代码加载的最佳方法和编程技巧,来帮助你编写更为高效和快速的代码。你还会了解到构建和部署文件到生产环境的最佳实践,以及有助于定位线上问题的工具。 -
C++必知必会
C++是一门大型复杂的语言,全面掌握绝非易事。但是,如果程序员希望从事专业开发工作,那么有些概念和技术是必须具备的。本书正是针对这一目的而撰写的。在书中,资深C++专家Stephen C. Dewhurst从业界多年来积累的宝贵经验中萃取了C++开发所应必备但常常被误解的知识,并在阐述时过滤掉了不必要的复杂性。你从何时(或者哪里)开始学习C++并不重要,但在迈出下一步之前,使用本书作为指南,可以确保轻松上阵! 本书为以下人士准备。 □不是一个初学者,并且需要迅速从中级C++迈向高级C++。 □已经具备一些C++编程经验,但在阅读中级和高级C++图书时动力不足,进展缓慢。 □已经听过一门介绍性的C++课程,但是发现当同事描述其C++设计和代码时,仍然不明就里。 □经验丰富的C或Java程序员,但还不具备有微妙差别的C++编程和设计的经验。 □C++专家,并且正在寻找一个“代言人”来回答那些经验欠缺的同事一再提出的同样问题。 -
软件开发者路线图
作为一名软件开发者,你在奋力推进自己的职业生涯吗?面对今天日新月异和不断拓展的技术,取得成功需要的不仅仅是技术专长。为了增强专业性,你还需要一些软技能以及高效的学习技能。本书的全部内容都是关于如何修炼这些技能的。两位作者Dave Hoover和Adewale Oshineye给出了数十种行为模式,来帮你提高主要的技能。 本书中的模式凝结了多年的调查研究、无数次的访谈以及来自O’Reilly在线论坛的反馈,可以解决程序员、管理员和设计者每天都会面对的困难情形。本书介绍的不只是经济方面的成功,学徒模式还把软件开发看成一种自我实现的途径。读一读这本书吧,它会帮你充分利用好自己的生命和职业生涯。 厌倦了自己的工作?去找一个玩具项目来帮你重拾解决问题的乐趣吧,这叫“培养激情”。 感觉要被新知识淹没了?做点以前做过的事情,重新探索一下自己熟悉的领域,然后通过“以退为进”再次前进。 学习停滞了?那就去寻找一支由富有经验和才能的开发者组成的团队,暂时呆在里面“只求最差”。 -
Python基础教程
本书是经典教程的全新改版,作者根据Python 3.0版本的种种变化,全面改写了书中内容,做到既能“瞻前”也能“顾后”。本书层次鲜明、结构严谨、内容翔实,特别是在最后几章,作者将前面讲述的内容应用到了10个引人入胜的项目中,并以模板的形式介绍了项目的开发过程。本书既适合初学者夯实基础,又能帮助Python程序员提升技能,即使是 Python方面的技术专家,也能从书里找到令你耳目一新的东西。 -
Algorithms
Essential Information about Algorithms and Data Structures A Classic Reference The latest version of Sedgewick,s best-selling series, reflecting an indispensable body of knowledge developed over the past several decades. Broad Coverage Full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing, including fifty algorithms every programmer should know. See -
Clojure in Action
DESCRIPTION Clojure is a new version of Lisp that runs on the Java Virtual Machine. It's a functional language, which means that it's ideal for the growing need for concurrent programming and for specialized tasks like creating domain specific languages. Clojure in Action is a hands-on tutorial for the working programmer who has written code in a language like Java or Ruby, but has no prior experience with Lisp. It teaches Clojure from the basics to advanced topics using practical, real-world application examples. Readers will move quickly through the theory and dive into practical matters like unit-testing, environment set up, and all the way through building a scalable web-application using domain-specific languages, Hadoop, HBase, and RabbitMQ. KEY POINTS * A complete tutorial, from basics to applied techniques * Covers creation of Domain-Specific Languages * Contains numerous practical examples -
数据库系统实现
《数据库系统实现(第2版)》是斯坦福大学计算机科学专业数据库系列课程第二门课的教科书。书中对数据库系统实现原理进行了深入阐述,并具体讨论了数据库管理系统的三个主要成分——存储管理器、查询处理器和事务管理器的实现技术。此外,第2版充分反映了数据管理技术的新进展,对内容进行了扩充,除了在第1版中原有的“信息集成”一章(第10章)中加入了新的内容外,还增加了两个全新的章:“数据挖掘”(第11章)和“数据库系统与互联网”(第12章)。 《数据库系统实现(第2版)》适合作为高等院校计算机专业研究生的教材或本科生的教学参考书,也适合作为从事相关研究或开发工作的专业技术人员的高级参考资料。 海报: -
程序开发心理学
《程序开发心理学(银年纪念版·中英对照)》出自软件领域著名思想家,美国计算机名人堂首批成员之一的Gerald M.Weinberg温伯格之手。《程序开发心理学(银年纪念版·中英对照)》关注的是程序开发过程中人的因素,堪称这一领域的开山之作。《程序开发心理学(银年纪念版·中英对照)》的初稿完成于整整40年前,作者当时慧眼独具,前瞻性地提出了将程序开发作为一种人类行为来考察的观点。在书中,作者从人类行为、社会行为、个人行为等角度,分析了人在计算机程序开发的过程中所表现出的行为及其影响,探讨了诸如什么样的程序员才是好的程序员,怎样才能打造出优秀的开发团队,我们在求职或招聘时做的那些智力测验是否真的有用,等等这类问题。作者的行文深入浅出,书中所举例子看似信手拈来,然而却发人深省,值得读者细细品读。几十年来,《程序开发心理学(银年纪念版·中英对照)》已让无数读者从中受益,时至今日仍然是畅销全球的经典之作。 适合阅读《程序开发心理学(银年纪念版·中英对照)》的,不仅仅是处在软件行业第一线的程序员;各个软件开发单位的团队领导、项目主管、高层管理人员,以及人力资源经理、文档撰写人员、程序开发工具的设计者、程序开发语言的设计者,甚至所有其工作与程序开发有关的人,都能从《程序开发心理学(银年纪念版·中英对照)》中得到启发。 -
编程的本质
本书提供了有关编程的一种与众不同的理解。其主旨是,实际的编程也应像其他科学和工程领域一样基于坚实的数学基础。本书展示了在实际编程语言(如C++)中实现的算法如何在最一般的数学背景中操作。例如,如何定义快速求幂算法,使之能使用任何可交换运算。使用抽象算法将能得到更高效、可靠、安全和经济的软件。 这不是一本很容易读的书,它也不是能提升你的编程技能的秘诀和技巧汇编。本书的价值是更根本性的,其终极目标是提升你对编程的洞察力。要想从中大获裨益,你需要从头到尾认真学习:阅读代码,证明引理,完成练习。到结束之时,你将看到如何把这里讨论的演绎式方法应用到你的程序中,保证你做出的软件部件能一起工作,并表现出它们所应该表现的行为。 书中给出的算法和需求针对某些被操作的类型。有关这些描述的代码(也可以通过Web得到)采用C++的一个小子集书写,这样做是为了让所有有经验的程序员都能理解。这个小子集可以看做一种特殊语言,是由Sean Parent和Bjarne Stroustrup一起设计的。 无论你是一位软件开发者,还是其他以编程作为一项重要活动的专业人员,或者是一名在校的学生,你都会逐渐理解本书的经验丰富的作者多年来一直在教授和阐释的道理:数学对于编程是绝好的东西,理论对于实际是绝好的东西。
热门标签
下载排行榜
- 1 梦的解析:最佳译本
- 2 李鸿章全传
- 3 淡定的智慧
- 4 心理操控术
- 5 哈佛口才课
- 6 俗世奇人
- 7 日瓦戈医生
- 8 笑死你的逻辑学
- 9 历史老师没教过的历史
- 10 1分钟和陌生人成为朋友