Exercises for Programmers

57 Challenges to Develop Your Coding Skills

出版社 Pragmatic Bookshelf
発売日 2015/09/22
ページ数 120
ISBN-13 9781680501223
お届け日 通常 03月12日~03月19日

販売価格 ¥2,140 通常価格 ¥2,640

税込 配送料は購入手続き時に計算されます。

プログラミングを始めたばかりの人と、新しいプログラミング言語を習得しようとしている人向けの問題集。

promptから入力を受け付けて文字列に組み合わせて出力する、みたいな本当に基本的なところから、認証フリーのパブリックなAPIを呼び出すような問題まで、順々に難易度を上げていく構成になっています。

回答集のようなものは付いていませんが、公式のforumに回答を投稿出来るとのこと。 https://pragprog.com/titles/bhwb が案内されていたのですが、それらしいコンテンツは見当たりませんでした。

2015年発刊なので、Pragmatic Bookshelfのサイト構造が変わってしまったからかも。(アカウントの作り変えを要するような改修をしているようなので)

57 Challenges to Develop Your Coding Skills検索すると、挑戦した人たちの回答Git Repositoryがいくつかヒットします。

最終章のWebアプリ形式の課題だけ、ちょっと難易度が飛躍しているような気もしますが。。。

この章までに「課題解決」の根本である「問題を解決可能な単位まで分割する」力が見についていれば、何とかなるということかも知れません。

出版社より

When you write software, you need to be at the top of your game. Great programmers practice to keep their skills sharp. Get sharp and stay sharp with more than fifty practice exercises rooted in real-world scenarios. If you’re a new programmer, these challenges will help you learn what you need to break into the field, and if you’re a seasoned pro, you can use these exercises to learn that hot new language for your next gig.

One of the best ways to learn a programming language is to use it to solve problems. That’s what this book is all about. Instead of questions rooted in theory, this book presents problems you’ll encounter in everyday software development. These problems are designed for people learning their first programming language, and they also provide a learning path for experienced developers to learn a new language quickly.

Start with simple input and output programs. Do some currency conversion and figure out how many months it takes to pay off a credit card. Calculate blood alcohol content and determine if it’s safe to drive. Replace words in files and filter records, and use web services to display the weather, store data, and show how many people are in space right now. At the end you’ll tackle a few larger programs that will help you bring everything together.

Each problem includes constraints and challenges to push you further, but it’s up to you to come up with the solutions. And next year, when you want to learn a new programming language or style of programming (perhaps OOP vs. functional), you can work through this book again, using new approaches to solve familiar problems.

What You Need:

You need access to a computer, a programming language reference, and the programming language you want to use.


DeepL 粗訳

ソフトウェアを書くとき、あなたは自分のゲームのトップになる必要があります。優れたプログラマーは、スキルを研ぎ澄ますために練習します。実世界のシナリオに基づいた50以上の練習問題で、スキルを磨いていきましょう。あなたが新しいプログラマーであれば、これらの課題は、この分野で活躍するために必要なことを学ぶのに役立ちますし、ベテランのプロであれば、これらの練習問題を使って次の仕事に向けてホットな新しい言語を学ぶことができます。

プログラミング言語を学ぶ最良の方法の一つは、問題を解決するためにそれを使うことです。それがこの本のすべてです。理論に根ざした問題ではなく、本書では、日常のソフトウェア開発で遭遇する問題を紹介しています。これらの問題は、初めてプログラミング言語を学ぶ人のために作られたものであり、経験豊富な開発者が新しい言語を早く習得するための学習パスでもあります。

まずは簡単な入力と出力のプログラムから始めましょう.通貨換算をして、クレジットカードの返済に何ヶ月かかるかを計算する。血中アルコール濃度を計算して、運転しても安全かどうかを判断する。ファイル内の単語を置き換えたり、レコードをフィルタリングしたり、ウェブサービスを使って天気を表示したり、データを保存したり、宇宙に今何人の人がいるかを表示したりすることができます。最後には、すべてをまとめるのに役立ついくつかの大きなプログラムに取り組むことになります。

それぞれの問題には制約や課題が含まれていますが、それを解決するのはあなた次第です。来年、新しいプログラミング言語やプログラミングのスタイル(おそらくOOPと関数型)を学びたいと思ったときには、新しいアプローチを使って身近な問題を解決するためにこの本をもう一度読んでみてはいかがでしょうか。

必要なもの: 必要なもの

コンピュータ、プログラミング言語リファレンス、使用したいプログラミング言語が必要です。