タグ

ブックマーク / zenn.dev/nameless_sn (17)

  • 設計・ソフトウェアアーキテクチャを学べるGitHubリポジトリ 16選

    はじめに 今回の記事では、設計やソフトウェアアーキテクチャを学べるGitHubリポジトリを16個紹介する。 対象とする読者 設計やソフトウェアアーキテクチャに興味関心があるエンジニア GitHubエンジニアリングの情報収集に活用したいエンジニア タイトルで気になった人 Architectural Patterns システムの基的な構成を理解するためのパターンやテンプレートを提供している。これらのパターンを学ぶことで、システムの構造やコンポーネントの関連性、相互作用を理解できる。これが開発者にシステムをより効率的かつ効果的に設計・実装する能力をもたらす。 Design Patterns for Humans 設計パターンを人間が理解しやすい形で説明している。デザインパターンは特定の問題に対して再利用可能なソリューションを提供する。これによって、開発者はより効率的にコードを記述でき、メンテ

    設計・ソフトウェアアーキテクチャを学べるGitHubリポジトリ 16選
  • ソフトウェアアーキテクチャ入門

    はじめに 今回の記事では、ソフトウェアアーキテクチャの入門的な内容を解説する。 対象とする読者 ソフトウェアアーキテクチャを勉強するエンジニア アーキテクチャに関して全くわからない初心者 タイトルで気になったひと ソフトウェアアーキテクチャとは? ソフトウェアのアーキテクチャは、システムの主要なコンポーネント、それらの関係(構造)、およびそれらがどのように相互作用するかを記述する。ソフトウェアのアーキテクチャとデザインには、品質属性、人間のダイナミクス、デザイン、IT環境など、多種多様な寄与要因が含まれる。アーキテクチャは、品質、保守性、パフォーマンス等のような全体的な成功に影響を与える重要な決定を含む。 ソフトウェアアーキテクチャの主な目的は、アプリケーションの構造に影響を与える要件を特定することだ。良好なアーキテクチャは、技術的な解決策を構築する際のビジネスリスクを削減し、ビジネス要件

    ソフトウェアアーキテクチャ入門
  • 2023年下半期に他人に勧めたいWeb技術まとめ

    はじめに Web技術は日進月歩で新しい技術が増えているが、実務でそれらすべてを触る機会はない。そこで、今回の記事では2023年下半期に赤の他人に勧めたいWeb技術を個人の独断と偏見で解説する。 対象者 これから何をすればいいのかわからないプログラマー 新しい技術に興味があるひと スキルセットを拡大したいひと タイトルでなんとなく気になったひと フレームワーク FastAPI FastAPIPythonAPIを開発するために開発された軽量のWebフレームワークだ。FastAPIでは、主に以下の特徴がある。 Node.jsやGo言語に匹敵する高速なアプリケーションを開発できる 構造が簡単(Flaskの影響を受けている) Pythonに型定義を含められる 環境構築がコマンド一つで終了する 非同期処理を簡単に実装できる Pythonで開発されているので、機械学習との相性が抜群 RESTとGra

    2023年下半期に他人に勧めたいWeb技術まとめ
  • エンジニアリングの必須図書 40冊 2023年版

    はじめに 今回の記事では、私の独断と偏見でエンジニアリングにおける必須の書籍を、以下の分野に分けて40冊共有する。 Web開発 行動経済学 ソフトスキル その他 対象とする読者 プログラミング初心者 どの書籍から読み進めればいいかわからないプログラマー なにか新しい書籍を読みたいひと なんとなくタイトルが気になったひと Web開発 『リーダブルコード』 良質なコードの原則と具体的なテクニックを丁寧に解説している。プログラミング初心者はまずこれを読むべき。良質なコード―要は、メンテナンスしやすいコードを書く上で重要なヒントを教えてくれる。コーディングで一生役立つ知識が満載だ。何度読んでも決して色褪せることのない不朽の古典である。 『14歳からのプログラミング』 図解付きでプログラミングの基礎(例:変数、関数、条件分岐)を理解できる。小難しい専門用語が一切なく、初心者でも問題なく理解できるよう

    エンジニアリングの必須図書 40冊 2023年版
  • 【徹底解説】REST VS GraphQL

    注意:今回の記事で載せているコードは読者に具体的なコードのイメージを持たせる目的で書いている。それ故に、実際にブラウザ上で実行しても動作しない点には注意してほしい。より専門的ににGraphQLとRESTの違いを学びたいならLogRocketの記事とApolloの記事を参考に。 はじめに 今回の記事では、Web APIの開発に重宝されるRESTとGraphQLの違いを解説する。 対象とする読者 これからREST、またはGraphQLを実務で積極的に活用したいひと 両者の違いがわからないひと 個人開発等でWeb APIをつくるひと タイトルを見てなんとなく気になったひと APIとは RESTとGraphQLの議論に入る前に、まずはAPIについて説明する必要がある。 Wikipediaによると、API(Application Programming Interface)は以下のように定義されてい

    【徹底解説】REST VS GraphQL
  • Kubernetesを徹底解説する記事

    はじめに 今回の記事では、PythonRuby等の他の技術には触れているものの、Kubernetesについては初心者であるプログラマーを対象に、Kubernetesを徹底解説する。 Kubernetesとは Kubernetes(通称「k8s」)とは、コンテナ化したアプリケーションのデプロイ、スケーリングや管理を行うためのオープンソースのプラットフォームである。Dockerと同様にGo言語で開発されており、2023年現在において、Dockerと双璧をなすコンテナ技術として利用されている。 Kubernetesが開発された経緯 Kubernetesは、コンテナ化されたアプリケーションを大規模にデプロイし管理するという課題に対処するために開発された。Kubernetesが開発される以前は、コンテナを大規模にデプロイし管理することは、複雑で手動のプロセスであり、多くの労力と専門知識が必要だった

    Kubernetesを徹底解説する記事
  • 【認証】JWTについての説明書

    はじめに この記事を読んでいるあなたはJWTについて知っているだろうか?JWTは、認証されたユーザを識別するために最も一般的に使用される。JWTは認証サーバから発行されて、クライアント・サーバで消費される。 今回の記事では、Webアプリケーションの認証方法として最も利用されているJWT認証を簡潔に解説する。 記事の読者の対象 JWT認証について知らない人 JWTのメリット・デメリット、仕組みについて詳しく知りたい人 アプリケーションの認証方法について詳しく知りたい人 JWTとは JSON Web Token(JWT)とは、クライアント・サーバの間で情報を共有するために使われる規格の1つである。JWTには、共有が必要な情報を持つJSONオブジェクトが含まれている。さらに、各JWTはJSONのcontentsがクライアントあるいは悪意のあるパーティによって改ざんされないように、暗号(ハッシュ

    【認証】JWTについての説明書
  • 個人開発を学べる記事 23選

    記事で紹介されている記事はあくまで個人の独断・偏見に基づいたものであることは予め述べておきます。今回の記事で紹介する記事は、いいねの数がQiitaであれば4桁、Zennであれば3桁であるものを中心に紹介していきます。 開設後3週間で収益10万円を得た個人開発サイトでやったことの全部を公開する 個人開発の面白さ、アイデアの作り方、個人開発でやってはいけないことや個人開発で収益を得るための具体的なテクニックまで解説されている。これから個人開発をやりたい人は絶対にこの記事を読むべき。 【夫婦で開発】1年かけて1週間を振り返えるアプリを気で開発してみた 夫婦でReact NativeとFirebaseで開発したタスク管理アプリをリリースした体験談。モックの作り方、役割分担などの方法を実例を踏まえて丁寧に解説されている。ただ単に自分が開発したアプリの特徴や使用した技術を書いているだけではなく、開

    個人開発を学べる記事 23選
  • 【重要】学習・開発で必ず確認するべきOSS

    はじめに 今回の記事では、プログラマーが学習・開発を円滑に進めるために知っておきたいOSSを紹介する。特に開発されているアプリケーションに焦点を当てて紹介する。今回の記事では、主に著者の得意分野や興味のある分野に絞って確認するべきGitHubリポジトリを紹介する。 紹介する分野は主に以下の通り。 Web Android Flutter 学習・開発でOSSを使うメリット プログラマーが学習・開発でOSSを使うメリットは以下の通り。 ソースコードを通して、開発したいアプリケーションの具体的なイメージや自分に足りないもの(必要な知識や言語等のスキル)を理解できる 自分が普段学習・開発で使っている言語の活用事例を確認できる アプリケーションの構造や開発フローを理解できる 確認が必須であるWebサイト OpenSourceAlternative.to 世界中のオープンソースのアプリケーション(特に有

    【重要】学習・開発で必ず確認するべきOSS
  • 【君はいくつ知っている?】【知らないと損する】開発の生産性を上げてくれる画期的なWebサービス 18選

    はじめに 今回の記事では、普段のプログラマーの開発の生産性を向上させてくれる画期的なWebサービスを18も紹介する。個人の独断と偏見で紹介しているので、今回の記事で紹介しているものはあくまで一例にすぎない。 知っているだけで開発の生産性を急激に高めてくれるWebサービスは存在する。今回の記事を通して1つでも気になるWebサービスを見つけることができれば非常に幸いである。 CSSGradient CSSで作れるグラデーションをまとめたサイト。1,000以上の種類から自分の好みのグラデーションを選べる。 Fontjoy 自分が制作するWebサイトに最適な組み合わせのフォントを選ぶ上で役立つ。主にデザイナー向けに作られたWebサイト。ポートフォリオサイトに使うフォントを選ぶ際に参考になるだろう。 Readme.so Markdownとテンプレートを活用して、自分が開発したプロジェクトのREADM

    【君はいくつ知っている?】【知らないと損する】開発の生産性を上げてくれる画期的なWebサービス 18選
  • 【知って損はない】個人開発で役立つAPIまとめ

    記事に紹介されているAPIはあくまで一例にすぎないので十分にご注意下さい。他にもAPIがある場合はコメント欄に書き記すようにお願いします。 今回の記事では、個人開発で役立つAPIを紹介する。 Google Play Developer API アプリ購入と公開の2つのタスクがある。 様々な公開タスクとアプリ管理タスクを実行できる Google YouTube Data API YouTubeを検索して動画・再生リスト・チャンネルなどの一覧を取得したり、更新したりすることができる。 検索条件で地域や言語を指定できるが、他の言語も混ざってしまうので「日語の動画のみ取得する」というようなことはできない。 Google Maps JavaScript API Web上でGoogle Mapを表示してピンを立てたり経路を表示させたりするのに使える 独自のコンテンツと画像で地図をカスタマイズでき、

    【知って損はない】個人開発で役立つAPIまとめ
  • Flutter開発をマスターするための手引き 2022年版

    はじめに 知っている人も少なくないが、FlutterAndroid/iOS開発で最も注目を集めているフレームワークの1つである。モバイル開発に携わらないプログラマーでもFlutterが人気であることを見聞きしたことはあるのではないだろうか。 そこで、今回の記事ではFlutter開発をマスターするためのスキルや確認するべき情報源をまとめる。今回の記事を参考に、Flutterに興味を持ってくれる人が少しでも増えたら幸いである。 Flutter開発をマスターするのに必要なスキル Visual Studio Code FlutterはVisual Studio Codeで開発を進めるのが通例となっている。Flutterを学ぶ前に、必ずVisual Studio Codeをインストールし、基的な使い方を十分にマスターしておこう。 Visual Studio Codeの基的な使い方が十分にわから

    Flutter開発をマスターするための手引き 2022年版
  • 【必見】Pythonプログラマーが必ず確認するべきGitHubリポジトリ 10選

    はじめに 今回の記事では、学習・開発でPythonを使うプログラマーが必ず確認するべきGitHubリポジトリを10個紹介する。記事の対象は主に以下の通り。 実務でPythonを使っているプログラマー Pythonの情報収集に困っている人 Pythonの学習・開発の効率をアップさせたい人 Pythonのフレームワーク・ライブラリを確認しておきたい初心者 Pythonは1991年にリリースされてから今年で30年以上も経過している歴史のあるプログラミング言語なので、情報量が非常に多くどのように開発を進めればよいかわからない人も少なくないだろう。 そこで、記事では個人の独断と偏見で学習・開発でPythonを使うなら必ず確認するべきGitHubリポジトリを紹介する。Pythonで実装できるプロダクトは多岐に渡るので、記事では分野ごとに確認するべきGitHubリポジトリを紹介する。 必見 awe

    【必見】Pythonプログラマーが必ず確認するべきGitHubリポジトリ 10選
  • 【徹底解説】FastAPIの特徴と課題点

    はじめに 今回の記事では、PythonのWebフレームワーク「FastAPI」の特徴・課題点を簡潔に解説する。記事の読者は主に以下のようなものを対象とする。 FastAPIを知らない人 FastAPIを実務で活用したい人 技術選定FastAPIを選ぶ理由を検討している人 PythonでWebアプリケーションを開発したい人 すでにDjangoLaravelなどの他のフレームワークに着手していて、別のフレームワークに関する情報を収集している人 FastAPIとは FastAPIとは、Djangoと同様にPythonのWebフレームワークである。主にWeb APIを開発するために利用される。 FastAPIの特徴 FastAPIの特徴は以下の通り。 Node.jsやGo言語に匹敵する高速なアプリケーションを開発できる。Pythonフレームワークの中では最も高速。 少ないコード量で実装できる

    【徹底解説】FastAPIの特徴と課題点
  • 私がDjangoでWeb開発を行う理由

    はじめに 今回の記事では、私がPythonのWebフレームワーク「Django」で開発を進める理由を独自の視点から徹底解説する。今回の記事の読者の対象は主に以下の通り。 個人開発でDjangoを使おうとしているプログラマー Djangoについて深く理解したいプログラマー Django個人開発(Web開発)に採用するメリット・デメリットを把握したいプログラマー すでにRailsLaravelなど他のWebフレームワークを使った開発を経験しており、他のWebフレームワークの特徴を把握しておきたいプログラマー Web開発の技術選定で困っているプログラマー Djangoとは DjangoPythonで開発されたWebフレームワークである。フレームワークを簡潔に説明すると、開発に必要な機能をデフォルトで揃えているものを意味する。WebフレームワークはWebアプリケーションの開発を効率化させるた

    私がDjangoでWeb開発を行う理由
  • 【解説】フレームワークとライブラリの違い

    はじめに 今回の記事では、プログラマー間で見解が分かれるライブラリとフレームワークの違いを徹底解説する。我々プログラマーはアプリケーション等を開発する際にフレームワークやライブラリを駆使する。その中でも、「フレームワークとライブラリの違いがわからない」と考える人も少なくないだろう。中には混同して使う人がいるかもしれない。両者は厳密に言えば異なる意味を示す。 フレームワークとは フレームワーク(framework)はアプリケーションを開発するのに必要な機能がデフォルトで揃っているものを示す。アプリケーションとして動く骨組みが用意されているので、別途プログラムを書かなくても最低限のアプリケーションとして動作する。フレームワークがあれば、我々プログラマーはゼロからアプリケーションを開発する必要はない。フレームワークには、タスクを実行するために書かれた再利用可能なコードやプログラムが含まれていて、

    【解説】フレームワークとライブラリの違い
  • 技術記事を書かないプログラマへ向けた記事

    はじめに 今回の記事では効率的に技術記事を書くための具体的なテクニックは取り扱わない。技術記事を書くことのメリットや技術記事を書く上で重要なマインドセットを中心に徹底解説する。 要旨:プログラマーは積極的に技術記事を書くべき 私たちプログラマーは積極的に技術記事を書くべきだ。TwitterでもQiitaでもこのZennでも構わない。とにかく何でもいいので、自分の学びや気づきを記録してそれを公開する習慣をつけよう。自分で学んで得られた知識や気付き、新しい価値観をまとめる作業は自分にしかできない。 記事を書くべき理由 記事を書くべき理由はざっくり以下の通り。 知識が定着するから 説明する能力が上がるから プログラマーとしての人となり(興味のある技術やプログラミングに対する価値観、説明する能力など)を知られるから それぞれ順番に解説する。 知識が定着するから 知識を定着させるための最高の手段は、

    技術記事を書かないプログラマへ向けた記事
  • 1