オンラインPC館

プログラミング

正確なプログラミング

プログラミングの基本は間違いの無い正確なプログラミングを行う事です。
プログラムはたった一文字違うだけで思わぬ問題を引き起こす事があるので、コードは正しく書く必要があります。
また、正確に記述するたけでなく、計算や処理の指定方法、値の設定が間違っているとこれも問題が起こります。
プログラムは人間が作成する以上ミスが付き物ですが、実はそこが一番の欠点にもなっています。
様々なテクニックを利用するのも大事ですが、基本はやはり正確なプログラミングが求められます。
プログラミング作法とは
開発ソフト
プログラミング
プログラミング関連ソフト(Vector)
AWS、「Amazon CodeGuru」発表 機械学習したコンピュータが自動でコードレビュー、問題あるコードや実行の遅い部分を指摘

プログラミングの効率化

プログラミングもある程度慣れて来ると、効率良く作れるように応用が必要になります。
プログラミングの効率化として一般的なのが、関数、ライブラリ、フレームワーク、クラス、APIなどを利用する方法です。
全てのプログラムを自分1人で書いていたのでは、どうしても効率が悪く時間がかかります。
そこですでに作成済みのプログラムを利用する事で、一から作る必要が無く時間の短縮が可能になります。
こうした応用技法もプログラミングをスムーズに作成するためには重要な技術となっています。
関数とは
ライブラリとは
フレームワークとは
クラスとは
APIとは
開発ソフト

プログラムの高速化

プログラムの世界でも一定レベル以上になると求められるのが処理の高速化です。
有名なソフトにもかつては使いやすかったけど、最近重くなって使いづらいと言った事はよくあります。
データ量や処理工程が増えればそれだけ重くなるのは当たり前ですが、処理速度を改善すれば軽量化も可能です。
使う側からすれば同じものを利用するなら軽くて速い方が良いのですが、実際に効果的な高速化を行うには幅広いスキルや知識が求められます。
一般的な高速化方法は処理を効率化するためのソースコードの最適化ですが、部分的にAssemblyなどの高速言語が利用できる場合もあります。
こうした既存の手法の中で様々な高速化方法を行うと思いますが、やがてはそれらにも限界がきます。
そうなると新しい発想や新しい技術の知識が必要になって来るため、より一層の探究力が求められるようです。
インラインアセンブラとは
高速なプログラムを書く為に
本家の5倍速? Pythonで実装したRuby処理系の「Topaz」が登場

セキュアコーディング

セキュアコーディングとは様々な攻撃を想定した堅牢で安全なプログラムを作るためのコーディングです。
最近はAPIの利用やクラウド型のソフトも増えており、安全性を考慮したプログラミングが求められています。
特に脆弱性の問題は重要施設のシステムから身近なモバイルアプリまで、かなり広範囲で問題視されています。
このように昨今のプログラミングでは処理速度と共にソフトウェアのセキュリティも非常に重要な要素となっています。
セキュアコーディング
セキュアコーディングスタンダードとは
プライバシーバイデザインとは
Javaセキュアコーディング入門
ホワイトハウスが開発者に対しC++やC言語からRustやJavaなどのメモリ安全性に優れたプログラミング言語への移行を勧める
一番危険なのは“ぜい弱な”アプリ 「悪意のない知識不足」からAndroidアプリを守れ!
なぜ、いま「セキュアコーディング」なのか?
セキュアコーディング:そこにある見えない大問題

プログラミング用語

プログラム

プログラムはコンピュータの基本となる命令を記述したもので、このプログラムによってコンピュータに様々な処理を実行させる事ができます。
ハードウェアもソフトウェアも全てこのプログラムを基本として動くため、コンピュータの核とも言える非常に重要なものとなっています。
プログラムとは
プログラマとは
スクリプトとは

アルゴリズム

アルゴリズムとはプログラムを処理する際の方法や手順の事です。
このアルゴリズムの内容によっては処理速度が大幅に変化するため、プログラミングでは非常に重要です。
アルゴリズムとは
いまさらアルゴリズムを学ぶ意味
あなたは男か女か? Facebookユーザーの「性別」を正確に推測できるアルゴリズム

デバッグ

デバッグはプログラムに付き物のバグの修正作業の事です。
ソフトを開発する場合はこのデバッグが必要になりますが、内容によっては脆弱性にも繋がるため迅速な対応が求められます。
なお、デバッグ作業はデバッガと呼ばれる専用のプログラムを利用して行われるのが一般的です。
デバッグとは
デバッガとは
デバッグソフト
メモリリークとは

開発環境

開発環境はプログラムを開発するためのソフトの事です。
通常はどのプログラミング言語もそれに合わせた開発環境が必要になりますが、言語によってはエディタのみで作成できるものもあります。
また、最近ではコンパイラ、エディタ、デバッガを統合したものや複数言語の使用に対応した統合開発環境が主流です。
統合開発環境とは
SDK(ソフトウェア開発キット)とは
コンパイラとは
プログラミングツールとは
開発ソフト
ライブラリとAPIとSDKは同じような意味なのでしょうか?
GitHubが日本法人「ギットハブ・ジャパン」設立 日本語テクニカルサポートで法人向け導入を促進

オンラインPC館