Take a look at our Programming Languages books. Shulph carries a great selection of Programming Languages books, and we are always adding more.
Explore C# and the .NET Core framework to create applications and optimize them with ASP.NET Core 2 Key Features Get to grips with multi-threaded, concurrent, and asynchronous programming in C# and .NET Core Develop modern, cross-platform applications with .NET Core 2.0 and C# 7.0 Create efficient web applications with ASP.NET Core 2. Book Description C# is a widely used programming language, thanks to its easy learning curve, versatility, and support for modern paradigms. The language is used to create desktop apps, background services, web apps, and mobile apps. .NET Core is open source and compatible with Mac OS and Linux. There is no limit to what you can achieve with C# and .NET Core. This Learning Path begins with the basics of C# and object-oriented programming (OOP) and explores features of C#, such as tuples, pattern matching, and out variables. You will understand.NET Standard 2.0 class libraries and ASP.NET Core 2.0, and create professional websites, services, and applications. You will become familiar with mobile app development using Xamarin.Forms and learn to develop high-performing applications by writing optimized code with various profiling techniques. By the end of C# 7 and .NET: Designing Modern Cross-platform Applications, you will have all the knowledge required to build modern, cross-platform apps using C# and .NET. This Learning Path includes content from the following Packt products: C# 7.1 and .NET Core 2.0 - Modern Cross-Platform Development - Third Edition by Mark J. Price C# 7 and .NET Core 2.0 High Performance by Ovais Mehboob Ahmed Khan What you will learn Explore ASP.NET Core to create professional web applications Master OOP with C# to increase code reusability and efficiency Protect your data using encryption and hashing Measure application performance using BenchmarkDotNet Use design techniques to increase your application's performance Learn memory management techniques in .NET Core Understand tools and techniques to monitor application performance Who this book is for This Learning Path is designed for developers who want to gain a solid foundation in C# and .NET Core, and want to build cross-platform applications. To gain maximum benefit from this Learning Path, you must have basic knowledge of C#.
Get started with C++ programming by learning how to build applications using its data structures and algorithms Key Features Explore data structures such as arrays, stacks, and graphs with real-world examples Study the trade-offs between algorithms and data structures and discover what works and what doesn't Discover how techniques such as bloom filters and multi-way heaps boost real-world applications Book Description C++ is a mature multi-paradigm programming language that enables you to write high-level code with a high degree of control over the hardware. Today, significant parts of software infrastructure, including databases, browsers, multimedia frameworks, and GUI toolkits, are written in C++. This book starts by introducing C++ data structures and how to store data using linked lists, arrays, stacks, and queues. In later chapters, the book explains the basic algorithm design paradigms, such as the greedy approach and the divide-and-conquer approach, which are used to solve a large variety of computational problems. Finally, you will learn the advanced technique of dynamic programming to develop optimized implementations of several algorithms discussed in the book. By the end of this book, you will have learned how to implement standard data structures and algorithms in efficient and scalable C++ 14 code. What you will learn Build applications using hash tables, dictionaries, and sets Explore how modern hardware affects the actual run-time performance of programs Apply common algorithms such as heapsort and merge sort for string data types Use C++ template metaprogramming to write code libraries Implement a URL shortening service using a bloom filter Use appropriate modern C++ idioms such as std:: array instead of C-style arrays Who this book is for This book is for developers or students who want to revisit basic data structures and algorithm design techniques. Although no mathematical background is required, basic knowledge of complexity classes and Big O notation along with a qualification in an algorithms course will help you get the most out of this book. Familiarity with C++ 14 standard is assumed.
Write high-level abstractions while retaining full control of the hardware, performances, and maintainability. Key Features Transform your ideas into modern C++ code, with both C++11 and C++17 Explore best practices for creating high-performance solutions Understand C++ basics and work with concrete real-world examples Book Description C++ Fundamentals begins by introducing you to the C++ compilation model and syntax. You will then study data types, variable declaration, scope, and control flow statements. With the help of this book, you'll be able to compile fully working C++ code and understand how variables, references, and pointers can be used to manipulate the state of the program. Next, you will explore functions and classes — the features that C++ offers to organize a program — and use them to solve more complex problems. You will also understand common pitfalls and modern best practices, especially the ones that diverge from the C++98 guidelines. As you advance through the chapters, you'll study the advantages of generic programming and write your own templates to make generic algorithms that work with any type. This C++ book will guide you in fully exploiting standard containers and algorithms, understanding how to pick the appropriate one for each problem. By the end of this book, you will not only be able to write efficient code but also be equipped to improve the readability, performance, and maintainability of your programs. What you will learn C++ compilation model Apply best practices for writing functions and classes Write safe, generic, and efficient code with templates Explore the containers that the C++ standard offers Discover the new features introduced with C++11, C++14, and C++17 Get to grips with the core language features of C++ Solve complex problems using object-oriented programming in C++ Who this book is for If you're a developer looking to learn a new powerful language or are familiar with C++ but want to update your knowledge with modern paradigms of C++11, C++14, and C++17, this book is for you. To easily understand the concepts in the book, you must be familiar with the basics of programming.
Develop your programming skills by exploring essential topics such as code reviews, implementing TDD and BDD, and designing APIs to overcome code inefficiency, redundancy, and other problems arising from bad code Key Features Write code that cleanly integrates with other systems while maintaining well-defined software boundaries Understand how coding principles and standards enhance software quality Learn how to avoid common errors while implementing concurrency or threading Book Description Traditionally associated with developing Windows desktop applications and games, C# is now used in a wide variety of domains, such as web and cloud apps, and has become increasingly popular for mobile development. Despite its extensive coding features, professionals experience problems related to efficiency, scalability, and maintainability because of bad code. Clean Code in C# will help you identify these problems and solve them using coding best practices. The book starts with a comparison of good and bad code, helping you understand the importance of coding standards, principles, and methodologies. You'll then get to grips with code reviews and their role in improving your code while ensuring that you adhere to industry-recognized coding standards. This C# book covers unit testing, delves into test-driven development, and addresses cross-cutting concerns. You'll explore good programming practices for objects, data structures, exception handling, and other aspects of writing C# computer programs. Once you've studied API design and discovered tools for improving code quality, you'll look at examples of bad code and understand which coding practices you should avoid. By the end of this clean code book, you'll have the developed skills you need in order to apply industry-approved coding practices to write clean, readable, extendable, and maintainable C# code. What you will learn Write code that allows software to be modified and adapted over time Implement the fail-pass-refactor methodology using a sample C# console application Address cross-cutting concerns with the help of software design patterns Write custom C# exceptions that provide meaningful information Identify poor quality C# code that needs to be refactored Secure APIs with API keys and protect data using Azure Key Vault Improve your code's performance by using tools for profiling and refactoring Who this book is for This coding book is for C# developers, team leads, senior software engineers, and software architects who want to improve the efficiency of their legacy systems. A strong understanding of C# programming is required.
Become a pro in creating modern interactive web applications using this JavaScript framework Key Features Explore the exciting features of Vue.js 2 through interesting examples and practical recipes Craft highly modular applications using design patterns and the component architecture of Vue.js Learn how to utilize modern development tools by building applications with Vue.js Book Description This Learning Path is divided into three sections, with each section bringing you closer to developing high-end modern web applications with Vue.js 2. It starts with building example applications to get well versed with the Vue.js ecosystem. You will learn to use Vue.js by creating three single page applications that explore Vuex and vue-router, the standard Vue tools for caching data and routing URLs for your applications. Going further, the Learning Path will address some of the challenges in designing web applications with Vue.js. The Learning Path will have easy-to-follow recipes to help you tackle the challenges and craft dynamic front end. You will learn to integrate web utilities like Babel and Webpack to enhance your development workflow. Finally, towards the end, the course will introduce you to several design patterns to help you write clean, maintainable, and reusable codes with Vue framework. At the end of the Learning Path, you will be confident with expertise in leveraging all the components and productivity features of Vue.js and will be on your way to design your web applications and execute it by writing clean code. This Learning Path includes content from the following Packt products: Vue.js 2.x by Example by Mike Street Vue.js 2 Cookbook by Andrea Passaglia Vue.js Design Patterns and Best Practices by Paul Halliday What you will learn Understand the fundamentals of Vue.js with practical examples Using vue-router dynamic routes to load data Build complex web interfaces using the Vue.js component system Use Webpack and Babel to enhance your development workflow Manage your application's state using Vuex Seamlessly implement routing in your single page applications Who this book is for The Learning Path is intended for JavaScript developers at any level of expertise who wants to learn Vue.js and develop productive web applications with the power of the latest Vue.js.
BRONZE RUNNER UP: Axiom Awards 2018 - Business Technology Category (1st edition)Coding is one of the most in-demand skills in the job market. Whether you're an entrepreneur, a recent graduate or a professional, you can supercharge your career simply by grasping the fundamentals, and Confident Coding is here to help.This new and improved second edition of the award-winning book gives you a step-by-step learning guide to HTML, CSS, JavaScript, Python, building iPhone and Android apps and debugging. For entrepreneurs, being able to create your own website or app can grant you valuable freedom and revolutionize your business. For aspiring developers, this book will give you the building blocks to embark on your career path. For working professionals, coding skills can add a valuable edge to your CV. Whatever your professional profile, if you want to master the fundamentals of coding and kick start your career, Confident Coding is the book for you.About the Confident series...From coding and web design to data, digital content and cyber security, the Confident books are the perfect beginner's resource for enhancing your professional life, whatever your career path.
Leverage the power of the Python data science libraries and advanced machine learning techniques to analyse large unstructured datasets and predict the occurrence of a particular future event. Key Features Explore the depths of data science, from data collection through to visualization Learn pandas, scikit-learn, and Matplotlib in detail Study various data science algorithms using real-world datasets Book Description Data Science with Python begins by introducing you to data science and teaches you to install the packages you need to create a data science coding environment. You will learn three major techniques in machine learning: unsupervised learning, supervised learning, and reinforcement learning. You will also explore basic classification and regression techniques, such as support vector machines, decision trees, and logistic regression. As you make your way through chapters, you will study the basic functions, data structures, and syntax of the Python language that are used to handle large datasets with ease. You will learn about NumPy and pandas libraries for matrix calculations and data manipulation, study how to use Matplotlib to create highly customizable visualizations, and apply the boosting algorithm XGBoost to make predictions. In the concluding chapters, you will explore convolutional neural networks (CNNs), deep learning algorithms used to predict what is in an image. You will also understand how to feed human sentences to a neural network, make the model process contextual information, and create human language processing systems to predict the outcome. By the end of this book, you will be able to understand and implement any new data science algorithm and have the confidence to experiment with tools or libraries other than those covered in the book. What you will learn Pre-process data to make it ready to use for machine learning Create data visualizations with Matplotlib Use scikit-learn to perform dimension reduction using principal component analysis (PCA) Solve classification and regression problems Get predictions using the XGBoost library Process images and create machine learning models to decode them Process human language for prediction and classification Use TensorBoard to monitor training metrics in real time Find the best hyperparameters for your model with AutoML Who this book is for Data Science with Python is designed for data analysts, data scientists, database engineers, and business analysts who want to move towards using Python and machine learning techniques to analyze data and predict outcomes. Basic knowledge of Python and data analytics will prove beneficial to understand the various concepts explained through this book.
A curious JavaScript developer's practical guide to deep dive into Deno and get the most out of it for building secure web applicationsKey FeaturesUnderstand Deno's essential concepts and featuresLearn how to use Deno in real-world scenariosUse Deno to develop, test, and deploy web applications and toolsBook DescriptionDeno is a JavaScript and TypeScript runtime with secure defaults and a great developer experience. With Deno Web Development, you'll learn all about Deno's primitives, its principles, and how you can use them to build real-world applications. The book is divided into three main sections: an introduction to Deno, building an API from scratch, and testing and deploying a Deno application. The book starts by getting you up to speed with Deno's runtime and the reason why it was developed. You'll explore some of the concepts introduced by Node, why many of them transitioned into Deno, and why new features were introduced. After understanding Deno and why it was created, you will start to experiment with Deno, exploring the toolchain and writing simple scripts and CLI applications. As you progress to the second section, you will create a simple web application and then add more features to it. This application will evolve from a simple 'hello world' API to a web application connected to the database, with users, authentication, and a JavaScript client. In the third section, the book will take you through topics such as dependency management, configuration and testing, finishing with an application deployed in a cloud environment. By the end of this web development book, you will become comfortable with using Deno to create, maintain, and deploy secure and reliable web applications.What you will learnUnderstand why you should use DenoGet to grips with tooling and the Deno ecosystemBuild Deno web applications using existing Node.js knowledge and the newest ECMA Script 6 featuresExplore the standard library and the benefits of Deno's security modelDiscover common practices and web frameworks to build a REST API in DenoStructure a web application using common architecture practicesTest and deploy a Deno application in the cloud using DockerWho this book is forThis book is for web developers who want to leverage their JavaScript and TypeScript skills in a secure, simple, and modern runtime, using Deno for web app development. Beginner-level knowledge of Node.js is recommended but not required.
A practical guide for software architects and Java developers to build cloud-native hexagonal applications using Java and Quarkus to create systems that are easier to refactor, scale, and maintainKey FeaturesLearn techniques to decouple business and technology code in an applicationApply hexagonal architecture principles to produce more organized, coherent, and maintainable softwareMinimize technical debts and tackle complexities derived from multiple teams dealing with the same code baseBook DescriptionHexagonal architecture enhances developers' productivity by decoupling business code from technology code, making the software more change-tolerant, and allowing it to evolve and incorporate new technologies without the need for significant refactoring. By adhering to hexagonal principles, you can structure your software in a way that reduces the effort required to understand and maintain the code.This book starts with an in-depth analysis of hexagonal architecture's building blocks, such as entities, use cases, ports, and adapters. You'll learn how to assemble business code in the Domain hexagon, create features by using ports and use cases in the Application hexagon, and make your software compatible with different technologies by employing adapters in the Framework hexagon. Moving on, you'll get your hands dirty developing a system based on a real-world scenario applying all the hexagonal architecture's building blocks. By creating a hexagonal system, you'll also understand how you can use Java modules to reinforce dependency inversion and ensure the isolation of each hexagon in the architecture. Finally, you'll get to grips with using Quarkus to turn your hexagonal application into a cloud-native system.By the end of this hexagonal architecture book, you'll be able to bring order and sanity to the development of complex and long-lasting applications.What you will learnFind out how to assemble business rules algorithms using the specification design patternCombine domain-driven design techniques with hexagonal principles to create powerful domain modelsEmploy adapters to make the system support different protocols such as REST, gRPC, and WebSocketCreate a module and package structure based on hexagonal principlesUse Java modules to enforce dependency inversion and ensure isolation between software componentsImplement Quarkus DI to manage the life cycle of input and output portsWho this book is forThis book is for software architects and Java developers who want to improve code maintainability and enhance productivity with an architecture that allows changes in technology without compromising business logic, which is precisely what hexagonal architecture does. Intermediate knowledge of the Java programming language and familiarity with Jakarta EE will help you to get the most out of this book.
A collection of in-depth conversations with leading developer advocates that reveal the world of developer relations today Key Features Top developer advocates reveal the work they're doing at the center of their tech communities and the impact their advocacy is having on the tech industry as a whole Discover the best practices of developer advocacy and get the inside story on working at some of the world's largest tech companies Features contributions from noted developer advocates, including Scott Hanselman, Sally Eaves, Venkat Subramaniam, Jono Bacon, Ted Neward, and more Book Description What exactly is a developer advocate, and how do they connect developers and companies around the world? Why is the area of developer relations set to explode? Can anybody with a passion for tech become a developer advocate? What are the keys to success on a global scale? How does a developer advocate maintain authenticity when balancing the needs of their company and their tech community? What are the hot topics in areas including Java, JavaScript, "tech for good," artificial intelligence, blockchain, the cloud, and open source? These are just a few of the questions addressed by developer advocate and author Geertjan Wielenga in Developer, Advocate!. 32 of the industry's most prominent developer advocates, from companies including Oracle, Microsoft, Google, and Amazon, open up about what it's like to turn a lifelong passion for knowledge sharing about tech into a rewarding career. These advocates run the gamut from working at large software vendors to small start-ups, along with independent developer advocates who work within organizations or for themselves. In Developer, Advocate!, readers will see how developer advocates are actively changing the world, not only for developers, but for individuals and companies navigating the fast-changing tech landscape. More importantly, Developer, Advocate! serves as a rallying cry to inspire and motivate tech enthusiasts and burgeoning developer advocates to get started and take their first steps within their tech community. What you will learn Discover how developer advocates are putting developer interests at the heart of the software industry in companies including Microsoft and Google Gain the confidence to use your voice in the tech community Immerse yourself in developer advocacy techniques Understand and overcome the challenges and obstacles facing developer advocates today Hear predictions from the people at the cutting edge of tech Explore your career options in developer advocacy Who this book is for Anybody interested in developer advocacy, the impact it is having, and how to build developer advocacy capabilities