Programming

Programming

プログラミングにプロポーショナルフォントって、どうなんだろ?

プログラミングだと、大体の場合、等幅フォントを使っているという印象がある。というのも、XcodeやEclipse、Visual Studioなどの統合開発環境のエディタの多くはは、デフォルトのフォントでは等幅フォントが採用される傾向にある。...
Opinion

いくらなんでも横に長すぎるのはやめてほしいところ

基本的に1行80文字を意識する必要はないでは、今日のプログラミングでは1行80文字を意識する必要はないということは書いたのだが、幾ら何でも、さすがに1行300文字とか500文字といったように、あまりにも長いのはやめてほしいところではある。も...
Objective-C

Objective-CとSwiftのアクセス修飾子

現在、iOSおよびmacOS向けネイティブアプリの開発ではObjective-CとSwiftがよく使われている。双方ともAPIレベルでの相互運用性が確保されており、コードを混在させることができるのは言うまでもない。一方で、細部レベルでは差異...
IT/Computer

GitHub Gistは思った以上に便利だった

ちょっとしたコードを不特定多数の人に共有したいときは、GitHub Gistが非常に便利である。アプリなどの本格的なものではなく、だれでも使えるような簡単なソースコードであれば、Gitツールも不要で共有することができるため、ウェブ上ですぐに...
IT/Computer

Swift 4はXcode 9に同梱される?

Xcode 8とSwift 3がリリースしてからおよそ3ヶ月、当時はプロジェクト・コードの互換性とソースコードの移行でかなり焦ったが、現在は概ね移行がおおむね完了しているようである。なお、今年はSwift 4リリースが控えているとのことで、...
Opinion

ブレークポイントが使えるとかなり違う

アプリ開発、その中でもデバッグではブレークポイントが使えるかどうか、その中でも変数の値が取れるかどうかで大きく変わってくる。ここではどのように変わってくるのかを簡単に書いてみたい。
IT/Computer

近年のプログラミング言語ではキャメルケースが主流のようだ

キャメルケースvsスネークケース論争にはうんざりでも取り上げていた、キャメルケースとスネークケース論争について、最近の主流のプログラミング言語で使われているライブラリーやアプリなど、GitHubでソースコードを確認する限り、キャメルケースで...
IT/Computer

Swiftlintのチェック項目がコロコロ変わる

SwiflintをCocoaPods経由でインストールすると、多くの場合定期的に更新をかけるわけだが、デフォルトのチェック項目がコロコロ変わるせいか、今まで大丈夫だったものが警告やエラーになるというのが往往にしてある。
IT/Computer

Carthage、CocoaPods、HomebrewはMac開発必携ツール

現在、アプリ開発を行なっているが、すでにCarthage、CocoaPods、Homebrewは開発において必携ツールとなった。これらがないと、開発の効率は大幅に下がってしまうだろう。
IT/Computer

rbenvをインストールする

rbenvは、複数のバージョンのrubyをインストールできるだけでなく、ディレクトリーごとにrubyのバージョンを切り替えることができるといったかなり便利な機能を兼ねそろえたruby管理ツールである。debやrpmなどのパッケージ管理ツール...
C/C++

POH6六村リオのコーヒー問題でありがちな間違い

今回は古い記事を読み直して、PaizaオンラインハッカソンVol.6に参加してみた(六村リオミッション, C++)とPaizaオンラインハッカソンVol.6に参加してみた(六村リオミッション, C言語)を読み直してみたい。というのも、この問...
IT/Computer

新しい仕様について行けないとすぐに置いていかれる

今日のアプリ/システム開発では、OS/端末及びフレームワークの仕様は急速に変化しており、それに対応できない人はたちまち置いてかれるだろう。これはスマートフォンアプリやウェブアプリはいうまでもなく、レガシーと言われているメインフレームでさえ例...
IT/Computer

複数人での開発の難しさ

システムの開発では基本的に複数人の開発者が分担して行う。特に規模が大きくなればなるほど人員は増える。しかしながら、これは決して簡単なこととは言えない。というのは、人数が多い状態での開発には特有の難しさがあるからである。
IT/Computer

GUIプログラミングとマルチスレッド

GUIプログラミングは、そのシーンにもよるが、マルチスレッドを意識する必要があるケースが往々にしてあり、なおかつ適切に使われていないと問題を引き起こす。しかもそれが適切に使われているかどうかは状況によって異なることさえありうるので、非常に難...
C/C++

C++のautoはちょっと違う気がする

C++では型推論を使う型として、autoが使われているが、これは個人的にはなんだか悪手だなと考えている面がある。というのは、他の言語でよくある変数宣言と微妙に違うこと、なおかつC言語と競合する書き方になっているからである。
IT/Computer

変数・関数の命名規則は一貫性を持たせる必要がある

アプリやシステムの開発を行っていると、命名規則でよく揉める。場合によってはそれで開発全体が停滞するといったことすらありえる。これはかなりの害悪であるため、それを防ぐことに注力しなければならない。ここでは私なりの対処法を書いてみたい。
IT/Computer

SwiftのInt型について

Swiftプログラミング言語であるため、当然ながら変数や関数といったものが使われている。その中で当たり前ではあるが、変数の型がある。とはいえ、C言語やC++とは違う場合があるので、そこは気をつけるべきである。
IT/Computer

プルリクエストを作ったならリベースやアメンドはすべきではない

GitHubなどのホスティングサービスでは、実際に変更をマージする前に変更をレビュー、必要に応じてコメントを入れるという「プルリクエスト」機能が提供されているものも少ない。とはいえ、プルリクエストにおいて、個人的に極力やめてほしいことがある...
IT/Computer

Swiftではswitch文のbreakは基本的に不要

C言語やその系統の言語では、多くの場合、switch文を使う場合、各caseの最後には意図的にフォールスルーを行う場合を除けばbreak文を付与しなければならなかった。というのは、C言語においては、各caseはラベルとしての意味合いしかなか...
C/C++

using namespaceには要注意

C++では指定された名前空間を使う処理として、using namespaceというものがあるが、これは使い所に注意が必要なものである。特にC++のプログラミング本では説明なしに使っている場合が多いので、特に気をつける必要がある。