プログラマは、正しい姿勢のホイールを作成します

著者|黄風水アップは、CSDNは、専門家Phodalブログ

Zebian | TANGリード

ヘッド図|著者描くとCSDNの使用を許可します

出品 | CSDN(ID:CSDNnews)

過去数年間、私は関連のプログラミングツールの多種多様を作成することとなっています。これらのツールのいくつかは、プログラムへの学習のためのソフトウェア開発作業、一部を導くために使用され、純粋に技術的な書き込みがあっ強化します。私はより多くのツールは、ツールのアイデアをより多くの接触を書いた後。私は、プロセス内の一部変更に関するレコードの記事を書きます。

まず、どのようなツールを作成するには?

あなたが技術スタックの豊富な知識だけでなく、時間の相対的な余裕がある場合は、その後、いくつかの情熱を追加し、あなたは悪くないツールを書くことができます。

テクノロジー・スタックツール

私のプログラミングのキャリアのわずか10年間で、私はおそらくまた、下から上へのさまざまなツールを実行する方法を理解し、異なる技術スタックレベルを試してみました。ツールの物理的な世界を接続します。

  • プログラミングの純粋な組み込みシステム。

ArduinoのArduinoのIDE +(センサなど)の入力装置の様々な開発ボード、一つだけ、簡単なコンピュータのプロトタイプである出力の一部を有します。

  • 組み込みオペレーティングシステムのプログラミング。

複雑なシーンのために、あなたはまた、あなたがタスクのスケジューリングを行うのを支援するために、単純なオペレーティングシステムが必要です。あなたは、単にタスクスケジューラを書くことができ、またはUCOS、FreeRTOS、コンチキ、ゼファーとあなたの能力に基づいて、他のシステムの開発と応用に基づいています。

  • 組み込みシステムは、GNU / Linuxがベースのプログラミング。

ほとんどの人にとって、ちょうどパイ+ Pythonは、関連するアプリケーションにラズベリーを学んで費用対効果の高いマシンで書くことができ、またはルータ上のOpenWrtのようなオペレーティングシステム、コストより多くの野心的なプログラムを実行しています。

  • コンパイルGNU / Linuxオペレーティングシステム。

あなたは時間があれば、あなたは自分の個人的な使用のオペレーティングシステムをコンパイルし、最初からそのようなLinux上などのツールを使用することができます。

  • 物事の組み込みプログラミングの時代。

私はESP32(ESP8266後継)のWi-FiおよびBluetoothに付属している彼のスマートホームを実行するために従事して使用するように、既存のアナログ機器のプログラム、設定HomeKitのさまざまです。いないハードウェアベースの開発者のために、アカウントの費用の理由を考慮して、Androidの物事の採用やWindowsのIoTは単純オプションです。私はフクシアをプレイしていない、それはまた、ハハ、良いかもしれません。

ほとんどの開発者のために、物理的な世界への接続は高価なもので、すべての後に、ハードウェアは、(かなり良いですラズベリーパイ、考える)あまりにも高価です。以来、我々はいくつかのツールを開発するために、オペレーティングシステムの後にそれを行うことができます。

  • デスクトップアプリケーション。

過去に私はいくつかのデスクトップアプリケーションを開発するためにQTを使用しようが、その後、私はPyQtは/私はPyGtk + Pythonのに変更、そして今私はデスクトップアプリケーションを開発するためのWeb技術を使用して、電子を回したことは簡単ですしています。

  • モバイルアプリケーション。

ネイティブに反応にもかかわらず、フラッターは、私はまた、アプリケーションの範囲を開発するためにそれらを使用し、非常に優れたモバイルアプリケーションフレームワークです。しかし、アーキテクチャ的に言って、私はハイブリッドアプリケーションアーキテクチャ、フラッター+イオン/角度、またはRN +イオン/角度を使用する傾向があります。

  • アプレット。

私はアプレットを議論し、彼らは様々なレビューを持っています。

  • コマンドライン・インタフェース・アプリケーション(CLI)。

日常の仕事のために、我々は唯一のフロントエンドのための簡単なコマンドラインを必要とする、おそらくNode.jsのは、Pythonを使用して、おそらく十分で、バックエンドのために十分である。しかし、今、私は行くことを好みますCLIアプリケーションの開発。

  • Webアプリケーション。

私たちにとって、考慮にクロスプラットフォームの機能を取って、私は、開発ツール、バックエンドのWebアプリケーションのフロントエンド角度+マイクロサーバレス+フロントエンドアーキテクチャを使用する傾向があります。

  • ブラウザのプラグイン。

時折、私はいくつかのブラウザプラグインを開発するが、私はFirefoxブラウザに切り替えたとき、私は古いクロームプラグインを移行する方法について考えています。

いくつかのアイデアを持ってあなたを与えることができ、これらの新しいツールを導入して喜んファンシー。そして、あなたはいくつかの興味深いアプリケーションを開発するために、一緒に文字列にこの知識を置くことができます。

  • アルドゥイーノ+ラズベリーパイに基づく継続的インテグレーションの警告灯。

  • ESP8266することにより、リモートへの展開サーバーのハードウェアの多様性をシミュレートします。

  • ......

今、我々は戻って、ビジネスに、遠く、遠く脱線しなければなりません。

アイデアを探して

上記のテクノロジー・スタックを使用すると、簡単なツールを開発することができます。

完了?

そして、コンテンツの半分

第二に、開発ツールのパターン

ツールの開発のために、開発のいくつかの特定の固定パターンがあります。私はおそらく三つの段階を経て、彼らはおそらく3つの異なるモードがあります:

  • 「任意の」は、ホイールのモードを作成します。つまり、私は愛していますどのように、私はどのように、私は逃したものを、私は何を追加しました。

  • 「原理とモード変換」モデル。私はそれらを沈殿させるために、いくつかの原則やモデル、およびツールを探して、どこから来たんです。

  • 「標準化の具体的なプロセス」モード。私は、プロセスの人々の役割を弱めるためのツールへの流れを処理します。

「任意の」は、ホイールを作成します

何も言うことは、私はあなたがどのように行うかが大好きません。しかし、それはそういくつかのポイントを持っている、あなたは、再生することができます:

  • 技術と材料の蓄積。簡単なことではありませんホイールを作成するために自由に、あなたは自由の目的を達成するために、学ぶために強力な能力を持っている必要がありますするには、抵抗溶接への意志は、ハンマーを取るの隣になります。

  • 既存のツールを習得する準備ができて探しています。あなたはそれらの上にいくつかの利点を学ぶことができます。

  • ビルドは、と一般的に使用されるツールを改善し続けます。使い続けることで、あなたはそれまでスムーズにこのツールを向上させることができます。突然、私は彼が(電子に基づいて)、ブラウザを書いたという考えを持っていた、笑。あなたは技術があなたのために重要であるアップグレードする場合、これは非常に良いアップグレードポイントです。

その後、あなたは喜んで自分のコンピュータ上で自分の毎日のバグの重複を見て、私が好きなことができ、その後、私は良いことがあり、別のコンピュータ上だと思います。私は時間があるときに、私はこのバグにそれを修正するために来ます。

原理とモード変換

これはおそらく、ツールを作るには大きな収穫の最後の年です。ツールを作るときその時に一緒に議論すると、同僚、そしてそれらを運ぶためにツールを使用し、原則と沈殿したモードを議論します。

自身でこの種のものの原則とモデルは、私たちの毎日の仕事のいくつかのために沈殿します。そのため、彼らは特に簡単にツールに変換されます。また、パターンと原則、犬の頭の多様性を導入するために使用されるツールを書くことができます。

あなたが独自のツールを作成するために、他の人から学ぶことができます:あなたを伝えるもう一つの大きな意義変換の原則とパターン。私はコカを書くときに、昨年、私はそのようなことを行います。

  • 紙のすべての種類を探しています。

  • 紙のすべての種類をダウンロードしてください。

  • 紙の様々なをお読みください。

その後、私は紙の私のすべての種類のツールに変換置きます。が、紙のほとんどは(特に水を書かれて、私は100を読んだ後だと思うし、私は99%以上が強い書くことができるというツールを書く)が、我々はいくつか他の人を簡単にコピーすることができます月の研究経験。

本から読むことも良いアイデアですが、専門書のほとんどはベースの、より困難な変換を練習する傾向があります。

具体的な標準化プロセス

我々はかつてのホイールがケース2つが、作成することを言う場合には、標準化プロセスはプラットフォームで行います。私は最近、5つの段階があり、様々な成熟度モデルを、研究しました。私は、モデルのGitHubの公式が書いたオープンソースの成熟度の定義を好みます:

  • 一時的な(アドホック) - またはレコード新しいプロセスは、通常ではなく、協調制御されていないと予測不可能な反応であるか、個人的なコミュニケーションによって駆動されます。成功は、個々の英雄に依存します。

  • マネジメント(管理) - プロセスの一部は、文書化された一貫性のある結果につながる可能性があります。成功は規律に依存します。

  • 定義(定義) - 標準化されたプロセスを記録し、他のプロセスに統合。成功は、自動化に依存します。

  • 測定(実測) - プロセスの定量的管理。成功は、ビジネス目標に基づいて評価指標に依存しています。

  • 最適化(最適化) - 増分変化と革新によって、プロセスが確実に向上継続されます。成功は、変更のリスクを減らすことに依存します。

この抽象の終わりには、我々はこのような処理を挙げることができます。

個人練習 - >チームのプラクティス・プロセス - >ツールの標準化プロセス - >他のプロセスに統合され、プラットフォームの一部として - >継続的改善のプラットフォーム

もう一度、抽象的です:

練習 - >モード - >ツール - >プロセス - >プラットフォーム

はい、そのシンプル。私たちは、ツールのモデルを開発しましたので、単に既存の成熟度モデルを見つける必要があり、その後、プラットフォームに。

結論

いいえホイール、しかしどこKPIのですか?

いいえテクノロジーませんが、ホイールですか?

無利子、しかしどこテクノロジーですか?

最後に、私は新しいホイール、知識プラットフォーム「のDevOpsチーム+ R&Dのパフォーマンスを」作られた、私たちはスターを歓迎します。https://github.com/phodal/ledge/。

著者について:(Phodal)の黄風水、ThoughtWorksのシニアコンサルタント、 CSDNは、 専門家のブログ。GitHubの、CSDNロングアクティブ、物事や地域のフロントエンドに焦点を当てます。図書の出版、「自分で物事を設計し、それを行う、」と「成長:フルスタックの成長デザイナーズ・ガイド」および他の6冊の書籍、と訳さ「物事の実用的なガイド。」

【終わり】

重要な一環として、「何百万人もの人々のAIを学ぶ」で、開発者ワンストップは、現在のAI研究最先端の技術を学ぶためになるよう、2020 AIProCon開発者会議は、6月26日のライブオンラインフォームによるコア技術万人となりますアプリケーションだけでなく、ビジネスの場合、実際の経験だけでなく、エキサイティングなオンライン開発者シャロンとプログラミングの様々なプロジェクトに参加することができます。活動の前向き関与Aシリーズ、ライブオンラインの相互作用は、開発者の数万人、だけでなく、排他的なライブギフト、コーヒー、さらには大規模な技術小麦を獲得するチャンスと通信することができないだけ。

ゲストブックが選択されたコメントは、299元、「2020 AIの開発者百万人大会」のライブオンラインチケットの値を取得します。あなたはそれを言いたい書き留め、指先を是非!

推奨読書 

企業のMicrosoftの買収は人ですか?クラックへソニー・プログラムは、ハッカーが彼の頑丈なプログラムの生活を見て、小説を書きます!

中国のUAV「古い大砲の子」回顧録

4年46版、記事は春の雲の歴史を読みます

自動的に要約を生成したキーワードをもとに-秘密の背後にあるAI技術力Jingdongモール

、Googleの副社長、NASAの科学者のアクセスのいずれか:インターネットの父は伝説の新しい冠を確認しました

かつてないほど容易になりまし:あなたは10分カフカと反撃!

なしコード時代ません、彼らの雇用を維持するためにどのようにプログラマ?

リリース1920元の記事 ウォンの賞賛40000 + ビュー1783万+

おすすめ

転載: blog.csdn.net/csdnnews/article/details/105321183