【知識】俺のためのプログラム覚え書き【共有】
■ このスレッドは過去ログ倉庫に格納されています
さあやってまいりました。 プログラムのノウハウをメモしていこうよ。 VB.NETだよ全員集合 就職できないよ つっこみ歓迎! ナレッジマネジメントしていこう。 【世界で活躍する君達へ】 君達は素晴らしい可能性を秘めている。しかし、価値あるものは狙われ易い。 身の回りのセキュリティはしっかりしておこう。どんな天才でも薬物を盛られるとダメになる。 弁当箱と水筒には鍵を掛けておこう。 開発者は太っていてもやせていてもdevと呼ばれる。 【C++でstd::wcoutを使う前のおまじない】 #include <locale> #include <clocale> std::wcout.imbue(std::locale("")); std::setlocale(LC_ALL, ""); 【C++プログラミングを極めるには】 1. マニュアル(規格票)をよく読む。 2. C/C++ FAQをよく読む。 3. Effective C++をよく読む。 4. 実際にコードをよく書く。 5. デザインパターンを研究する。 6. IDEとデバッグ手法を極める。 【原因不明の障害は時刻を疑え!】 最近、ウィンドウズの内部時計が勝手に狂うという現象が多数確認されているらしい。 ビルドがおかしい、更新されない場合は、ウィンドウズやファイルの時刻を一度確認してはいかがだろうか。 (続き)ウィンドウズには、インターネット上の時計に常に同期するという機能があるが、 インターネット上の時計も狂うことがあるらしい。そうした場合は時計の同期を停止して、手動で時計合わせすると、 一時的に問題を避けられる。時計が狂った詳しい原因は不明。 小ネタ: Winでアウトラインフォントを列挙する時は if (nFontType & TRUETYPE_FONTTYPE) なんて判定の仕方はしてはダメ PostScriptなotfは DEVICE_FONTTYPE 扱いされるのでこれもチェックする必要あり 【MS-DOSの叡智】 MS-DOSの知識は決して無駄ではない。ウィンドウズが故障して、壊れていないファイルを取り出すときに、DOSのコマンドの知識が役立つ。DOSのコマンドを知っていれば、PCの修理屋さんになれるかも? 【ディレクトリの削除】 C:\> rd /s /q (削除したいディレクトリ) 【ディレクトリごとコピー】 C:\> xcopy /s (古いディレクトリ) (新しいディレクトリ) 【ディスク切り替え】 C:\> D: 【名前変更】 C:\> ren (古い名前) (新しい名前) 【ファイルコピー】 C:\> copy (古いファイル) (新しいファイル) 【現在のディレクトリ移動】 C:\> cd (ディレクトリパス) 【MS-DOS基礎知識】 あるコマンドの使い方がわからないときはコマンド名に/?をつけて実行しろ。 コマンドの名前自体がわからないときはHELPしろ。 ワイルドカード文字(*と?)を使えば、複数のファイルをいっぺんに処理できるかも。 ファイル名の一部を入力して、Tabキーを押せば、入力補完してくれるかも? MS-DOSのファイルシステムFATは形を変えつつも現在でも広く使われている。 MS-DOSは起動が早いよね。 Microsoft、 MS、MS-DOSも商標登録されている。Win32のことをWin32APIと書いたり、MSをM$と書いたりするのも商標を避けるためだ。 つまり、競争相手はWindowsと書くのは商標に抵触する恐れがある。競争相手は商標を使えない。 「Windows 10」ではなく、スペースをつめて「Windows10」または「Win10」と書かないといけない。 これらはビジネスマナーに関わることだ。 >>150 以下 ほぅほぅ ちょっとこの質問は この板、このスレの本筋からは反れるだろうけど気になったんで聞いてみるが 逆に言うと コレならオッケーと言う部分を敢えて「遊び」として設けてるって事? 素人感覚じゃ考えうる全パターン登録しちゃえばいいじゃん?になるけど どうもそこまでガッツリでも無さげにも見える スペース詰めて書けばいいよ=それは登録して無いからご自由に とか (第三者が金もかからんので勝手に使ってくれる でも明らかにウチの名前よね→内容が賛否関わらず 宣伝ありがとう みたいなん前提?) もしくはそこまでガッツリは他の要因で登録出来ないだけ? コンピューターの進化により、マルチコア環境が当たり前になった。これは複数のCPUが同時に動くような効果がある。 そこで、時間のかかる重たい処理では、並列処理を前提にしたコードを書くとパフォーマンスの向上が望まれる。 普通のありふれた環境で、並列処理を行うには、マルチスレッドやOpenMPを使うのが一般的だ。 プログラマーたるもの、普通に技術文章を書くときでも、大文字小文字、全角半角の区別、機種依存文字の不使用に気をつけて書きなさい。 アメリカでは技術文書の書き方の手本がきちんと定義されている。 LoadStringとTrackPopupMenuにはバグがある。 clang + MinGWで作ったexeはWin95でも動作可能かも? BlueToothにBlueBorneという脆弱性が発見されたらしい。対策ができていない機器ではBlueToothを有効にしてはならない。ネットワーク経由で狙われるぞ。 ソフトウェアを部品(モジュール)に分けて考えることは非常に重要だ。ソフトウェアは部品の 組み合わせで作成できる。大きな問題や課題を解決しやすい小さなタスクに分ければ、問題解決につながる。 Maxima(マキシマ)という無料の数式処理ソフトを使えば、パソコンで微積分を計算したり、方程式を解いたりすることができる。お試しあれ。 悪ぶってもモテない。ちょいワルオヤジがモテる、は嘘八百のデタラメ。 超デカいプロジェクトでスレッド無制限の「make -j」を実行するとOSが死ぬ。 木構造やリスト構造などを画像にしたい場合は、graphvizというツールを使うと自動で出来て簡単。 教典によると、Win32APIにはsExがあるらしい。 OSのユーザー名にマルチバイト文字を使うやつは落とされる。 GetVersionExとGetSystemInfoはウソをつく。 ウィンドウが最大化または最小化されているときは、ウィンドウの位置とサイズを記録しない方がいい。 最大化されたウィンドウは移動操作が難しい。また、最小化されたときは論理的な位置とサイズがとんでもない値になるから。 さもなくば、最小化された後に閉じると不具合が発生するかもしれない。 ちなみに最大化はIsZoomed関数で、最小化はIsIconic関数で確認できる。 CMakeでマニフェストの埋め込みに困った場合は、マニフェストへの参照をリソースから削って、ターゲットにマニフェストファイルをソースとして記載すればいい。 >>170 訂正。マニフェストが取り込まれるのはMSVCのみらしい。すみません。 https://cmake.org/cmake/help/v3.4/release/3.4.html#other CMake learned to honor *.manifest source files with MSVC tools. Manifest files named as sources of .exe and .dll targets will be merged with linker-generated manifests and embedded in the binary. 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方 役に立つかもしれません グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』 ZQSM6 ソフトウェアのダウンロードページに、よく、「ダウンロード」という不正な広告が出ることがある。 不正な広告はよくウイルスやアドウェアをダウンロードさせるので、注意深く正しいダウンロードリンクを見分けないといけない。 ちなみにグーグルの広告にはコーナーにバッテンとアイコンがついている。 【スマホアプリ開発の手引き】 1.まず、スマホアプリ開発用の入門書を買う。 2.スマホアプリの開発環境を整える。 3.プログラム言語を理解する。 4.APIとSDKを理解する。 5.何かアプリを作る。 6.デバッグと改良を繰り返す。 7.販売計画を立てる。 8.アプリストアに自分のアプリを登録する。 9.アプリのホームページを作って人気を集める(Web開発が必要)。 10.お金が入って来る。おしまい。 【分割統治】 解決が困難な大きな問題をより小さな複数の問題にほどよく分割すると、問題分析や並列処理がはかどるかも知れない。 数年前のPCの動作が遅い場合は、近所のパソコン工房でSSDにデータ移行すると吉。 ツイッター眺めるひまありゃ、アプリで勉強、はかどるはかどる。 浮動小数点を使わない正確な巨大整数の四則演算を行うのは、少し知能と技能が要る。 計算速度のためと、ハッ●ング対策のために、多倍長演算は限られた人しかできないようになりつつある。 グラフ描くのにgnuplotはもう古い。 データサイエンティストならPythonでしょ。 gcc/g++をお使いの人は、EXE/DLLにstripをほどこすとファイルサイズが 驚くほど小さくなるぞ。試してみよう。 昔はVisual Studioみたいな便利なものはなかった。コマンドラインでデバッガのgdbでデバッグしたり、ダンプテキストから実行中のアドレス(EIP)を 読み取ってaddr2lineというツールに渡して、ハングした場所の行番号を解析したりしたもんだ。 ブラウザのIEには設計上の致命的な欠陥があって、JavaScriptの無限alertに対処できないらしい。 【アプリ開発の心得 第一条】 1.単体テストや結合テストを自動化し、開発手順に組み込もう。 2.モジュール(部品)を標準化し、運営・再利用・改良しやすい形にしよう。 3.Gitやバージョン番号管理によって、モジュールごとにちゃんとバージョン管理をしよう。 4.開発したアプリを配布する前に、必ずテスト・ウイルススキャンしよう。信頼を失ったらゲームオーバーだ。 5.アプリを複数の検索エンジンや複数の掲載サイトに登録しよう。ホームページに掲載するだけでは顧客は獲得できない。 6.アプリの関連記事も書き、SNSに拡散して利用者を誘導しよう。記事の説得力・インパクト・SEOが大事。 7.開発の国際化を受け入れよう。日本語も英語も大事。自動翻訳は便利。 8.ネーミング・GUI・デザイン・ビジュアルは命と心得よ。 9.資金に余裕があれば、デジタル署名を付けよう。 10. ダウンロード数をブーストし、ランキングを操作しよう。 GitHubでOSS開発ができる実力があれば、Bountysource って所で開発を手伝うとお金がもらえる。 計算機科学ではエミュレーション (emulation) は重要な概念だ。 ボタンを押していないのに押したように振る舞うのが、クリックのエミュレート。 マウスを動かしてないのに動かしてるようにするのがマウスのエミュレート。 ゲーム機がないのにゲーム機のように動作するのが、ゲーム機のエミュレータ。 ソフトウェアの品質向上には静的解析(static analysis)ツールが有効。 自動デプロイは作業の手間を省ける。 テストの自動化は便利。 量子コンピューターの発展により、5chトリップがすべて解読される未来が来るかもしれない。恥ずかしいトリップはやめとけよ。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.0 2024/04/24 Walang Kapalit ★ | Donguri System Team 5ちゃんねる