Hands-On Object-Oriented Programming: Mastering Oop Features for Real-World Software Systems Development

Rangisetti, Anil Kumar

  • 出版商: Apress
  • 出版日期: 2024-10-04
  • 售價: $2,310
  • 貴賓價: 9.5$2,195
  • 語言: 英文
  • 頁數: 585
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 9798868805233
  • ISBN-13: 9798868805233
  • 相關分類: Object-oriented
  • 海外代購書籍(需單獨結帳)

相關主題

商品描述

Learn how to easily design and implement a software system using object-oriented programming. Through hands-on activities, this book equips you with the real-world practice needed to master OOP skills that can be applied universally across any programming language.

This book is dedicated to bridging the gap between theoretical concepts and practical implementation in software development using OOP. Readers will first understand the importance of OOP in handling software complexities before learning how to model real-world problems through access control, extendible object design, and object relationships. Specifically, the author discusses how to use inheritance, association, and polymorphism concepts for implementing reusable and easy-to-use complex software. More importantly, this book covers design patterns and event-driven programming for learning how to model complex interactions among various objects of the software system to implement various use cases.

Unlike existing books on OOP which teach syntax and semantics through standard examples, this book leverages an immersive learning experience through a variety of real-world use cases, applications, games, and system software. While written in C++, the skills can be applied to any OOP language of the reader's preference. The book's last chapters will quickly introduce Python and Solidity languages for learning advanced technologies. By the end, novice and seasoned developers will know how to implement practical and reusable software systems with confidence.

What You Will Learn

  • Apply OOP concepts through real-time use cases: games, applications software (online shopping, reservations, etc.), system software (protocols, simulators, etc.), and modeling and implementation using C+
  • Design and implement reusable and extendible software with OOP
  • Understand the importance of design patterns and learn how to use them for solving real-time issues
  • Use event-driven programming for implementing complete interactions of complex application software, system software, and simulators
  • Implement OOP using C++ features and discover Python and Solidity constructs for OOP

Who This Book Is For

Beginners and intermediate software developers with basic programming knowledge to quickly learn OOP concepts with C++. Advanced users will find it useful for quickly exploring best-design principles, patterns, and event-driven programming for implementing complex software systems.

商品描述(中文翻譯)

學習如何輕鬆設計和實現一個使用物件導向程式設計的軟體系統。透過實作活動,本書提供您掌握 OOP 技能所需的實務經驗,這些技能可以普遍應用於任何程式語言。

本書致力於彌補理論概念與實際實作之間的差距,專注於使用 OOP 進行軟體開發。讀者將首先了解 OOP 在處理軟體複雜性方面的重要性,然後學習如何透過存取控制、可擴展的物件設計和物件關係來建模現實世界的問題。具體而言,作者討論如何使用繼承、關聯和多型等概念來實現可重用且易於使用的複雜軟體。更重要的是,本書涵蓋設計模式和事件驅動程式設計,教導如何建模軟體系統中各種物件之間的複雜互動,以實現各種使用案例。

與現有的 OOP 書籍不同,這些書籍通常透過標準範例教授語法和語意,而本書則透過各種現實世界的使用案例、應用程式、遊戲和系統軟體提供沉浸式學習體驗。雖然是用 C++ 撰寫,但這些技能可以應用於讀者所偏好的任何 OOP 語言。本書的最後幾章將快速介紹 Python 和 Solidity 語言,以學習先進技術。到最後,無論是新手還是資深開發者,都將能夠自信地實現實用且可重用的軟體系統。

您將學到的內容:
- 透過即時使用案例應用 OOP 概念:遊戲、應用程式軟體(線上購物、預訂等)、系統軟體(協定、模擬器等),以及使用 C++ 的建模和實作
- 設計和實現可重用且可擴展的軟體
- 理解設計模式的重要性,並學習如何使用它們來解決即時問題
- 使用事件驅動程式設計來實現複雜應用程式軟體、系統軟體和模擬器的完整互動
- 使用 C++ 特性實現 OOP,並探索 Python 和 Solidity 的 OOP 構造

本書適合對象:
適合具有基本程式設計知識的初學者和中級軟體開發者,幫助他們快速學習 C++ 的 OOP 概念。進階使用者將發現本書對於快速探索最佳設計原則、模式和事件驅動程式設計以實現複雜軟體系統非常有用。

作者簡介

Dr. Anil Kumar Rangisetti received his PhD in the field of computer science and engineering from IIT Hyderabad. He has 10 years of teaching and research experience in computer science and engineering. During his career, he worked at prestigious Indian institutions such as IIIT Dharwad, SRM-AP, and GMR, and worked at software development and research labs such as ARICENT, IRL-Delhi. Currently he is working as Assistant Professor in the Department of CSE, IIITDM Kurnool. He trained the students in OOP languages, and how to use advanced simulators (NS-3), Docker, and Networking tools for researching and developing applications at his work places. He guided a significant number of undergraduate and postgraduate students for project works.

Broadly, his research interests include Wi-Fi technologies, Next Generation Mobile Networks, SDN, NFV, and Cloud Computing. Besides research activities, he is interested in writing and reviewing books on computer science technologies and programming languages. He published a number of novel research publications with IEEE, Springer, Elsevier, and Wiley in the field of a variety of networking technologies such as LTE, SDN and NFV, and Wi-Fi technologies. He authored a book titled Advanced Network Simulations Simplified.

作者簡介(中文翻譯)

Dr. Anil Kumar Rangisetti 於印度理工學院海得拉巴分校獲得計算機科學與工程的博士學位。他在計算機科學與工程領域擁有十年的教學和研究經驗。在他的職業生涯中,他曾在印度的知名機構工作,如 IIIT Dharwad、SRM-AP 和 GMR,並在 ARICENT、IRL-Delhi 等軟體開發和研究實驗室工作。目前,他擔任 IIITDM Kurnool 計算機科學與工程系的助理教授。他訓練學生使用物件導向程式設計語言,並教授如何使用先進的模擬器(NS-3)、Docker 和網路工具來研究和開發應用程式。他指導了大量的本科生和研究生進行專案工作。

廣義上,他的研究興趣包括 Wi-Fi 技術、下一代行動網路、SDN、NFV 和雲端計算。除了研究活動外,他還對撰寫和審稿計算機科學技術和程式語言的書籍感興趣。他在各種網路技術領域,如 LTE、SDN 和 NFV 以及 Wi-Fi 技術,與 IEEE、Springer、Elsevier 和 Wiley 發表了多篇新穎的研究論文。他著有一本名為《Advanced Network Simulations Simplified》的書。