[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

developmentに関するmas-higaのブックマーク (191)

  • リファクタリング自爆奥義集 - Qiita

    こんにちは、リファクタリングが大好きなミノ駆動です。 この記事は READYFORアドベントカレンダー2021 、13日目の記事です。 これはなに? コードが複雑化し、技術的負債が蓄積していくと、コードの変更が難しくなり、開発生産性が低下していきます。技術的負債の解消にはリファクタリングが必要です。 しかし、リファクタリングの実施には数々の罠やハードルがあります。 下手すると逆に負債を作り込んでしまうといった、自爆技をやりかねません。 この記事は、リファクタリングのアンチパターンと、その対策をまとめたものです。 この記事のゴール リファクタリングには様々なアンチパターンがあることを知る。 アンチパターンにハマらないためのアプローチを知る。 リファクタリングの効果を高めるにあたり、何のために実施するのか意義を理解する。 前提知識 なぜ自爆技となるのか、自爆だと理解するのに必要な前提知識を挙げ

    リファクタリング自爆奥義集 - Qiita
  • JavaScriptのバンドルとトランスパイルが不要なモダンWebアプリ | POSTD

    筆者はES6以前のVanilla JSがあまり好きではありませんでした。 そこで、バニラJavaScriptをなるべく書かなくていいように、2000年代を通じてさまざまなアプローチを追求してきました。最初はRJS(Ruby-to-JavaScript)、次はCoffeeScriptでした。どちらのアプローチも、バニラJavaScriptより楽しく書けるソースコードを、ブラウザが実行できるバージョンのJavaScriptトランスパイルするものです。ある程度は、うまくいっていました。 とはいえ、これは明らかにその場しのぎの手段に過ぎず、ブラウザがより洗練されたJavaScriptを理解できる日を待ちわびていたのです。ただ、そんな日が来ることはなく、永久にその場しのぎでやり過ごすのかと思われる時期がしばらく続きました。 しかし、幸いなことにJavaScriptは改善を続け、2015年にはES6

    JavaScriptのバンドルとトランスパイルが不要なモダンWebアプリ | POSTD
  • Internet Explorer のサポートを切ると何が嬉しいのか - ちなみに

    社内勉強会向けにまとめた資料から社内特有なところを削除したものです。 ゴール JavaScript と Web API の違いが分かる Internet Explorer のサポート終了によって何が変わるのかが分かる Internet Explorerとは マイクロソフトのブラウザ Windows 95向けの機能拡張で追加された Internet Explorer 11をもって開発終了 現在は Microsoft Edge へ Chakraとは マイクロソフトのJavaScriptエンジン (JScript9.dll) JScriptに代わる新しいエンジンとして Internet Explorer から搭載 Edge用のChakraはフォークされたもの (Chakra.dll) 現在はV8 JavaScriptエンジンとは JavaScriptの実行環境 ECMAScriptの実装 代表的

    Internet Explorer のサポートを切ると何が嬉しいのか - ちなみに
  • なぜ自動テストの導入は失敗するのか? - プログラマーの脳みそ

    開発室の雑談。営業側のマネージャが言うには 「今のプロジェクトで自動テストの導入を試みている話をしたら、XXXさんのところでも過去にいくつか導入を試みたけどもみんな上手くいかなかったって話になって」 なるほど? まあ確かに自動テストはシステム開発にとって魅惑の技法ではあるものの、では導入がうまくいっているか? というと普及率は低いと言わざるを得ない。私がお手伝いしたプロジェクトでは、元請け側から自動テストをやるお達しが来たわけだが、紆余曲折あって掛け声倒れのような状態になってしまった。 ビジネス書の煽りタイトルのような件だが、古式ゆかしき受注生産の業務システム開発プロジェクトに自動テストを導入しようとして失敗する事例を聞いたので、僕なりに分析して見出した要素を挙げておこうと思う。 V字モデル ソフトウェア開発の手法としてV字モデルというものがある。 オーダーメイドでシステムを作るにあたっ

    なぜ自動テストの導入は失敗するのか? - プログラマーの脳みそ
    mas-higa
    mas-higa 2021/04/30
    次工程からのフィードバック想定してるプロジェクトなんて聞いたことない。前工程は顧客の検収済みだから変更できない。次工程でなんとかして!
  • もしあなたが急にAndroidアプリを業務で作るはめになった場合の選択肢(2021年初頭版) - Qiita

    記事はAndroid Advent Calendar 2020の2020/12/01分です。 初っ端ということなので、2020年末と2021年頭でのAndroidエンジニアとして初めて業務でやる場合に抑えておいたほうが良い最低限の部分を書いていこうと思います。(ツッコミ待ちです) 対象 2021年3月ぐらいまでに !!業務!! でAndroidアプリを作らされる事になった可愛そうな人が居たとします この人は手続き型言語でオブジェクト指向プログラミングができる知識があり、Androidアプリもなんとなく趣味で作ったこともあるぐらいのレベル感です(なので上長からいきなりお前Android担当なと言われた) 最低限のAndroidアプリの作成の知識はあるものとします(画面の表示にはActivityがいるよとかは書かない) ゲームは対象外です 業務でAndroidアプリを作ることを想定しています

    もしあなたが急にAndroidアプリを業務で作るはめになった場合の選択肢(2021年初頭版) - Qiita
    mas-higa
    mas-higa 2020/12/02
    3ヶ月おきに更新して欲しい
  • Javaカバレッジ計測ライブラリ - Qiita

    Javaのテストカバレッジを計測できるオープンソースライブラリの現状を調査してみました。 要約 Coberturaは開発が停止しているため、今後はJaCoCoもしくはCloverが主流となりそう。ただしCloverは最近オープンソース化されたため、今後の継続開発(=コミュニティの活発度)はあまり見えていない。 主要な3ライブラリの概要 JaCoCo 最新版は2018年1月リリースのバージョン0.8.0(2018年3月時点)。 実行時に計測(on-the-fly instrumentation)できないクラスに対して、クラスファイルに計測処理を事前に追加する(offline instrumentation)ことができる。 Cobertura 開発は2015年2月で止まっている。 Java 8に未対応でLambda式などの記法があるとその部分の計測ができない。 他のライブラリでは対応していない

    Javaカバレッジ計測ライブラリ - Qiita
  • 現場で役に立つ!最小限の修正で仕様変更に対応する方法(Ruby) - Qiita

    この記事は Ruby Advent Calendar 2019 第6日目の記事です。 時間がないのにどうしても仕様変更しなくてはならないとき、どんな考え方で対応しますか?ってお話です。 はじめに この記事では、主に大規模Webアプリケーションの開発に於いて、新規開発ではなく修正や拡張を行うシーンを想定して、無駄な工数をなるべく削減すべく自分なりに考えて実践しているベストプラクティスを書いている。 要は、時間優先で修正にあたるとき、実際に自分が頭の中で考えていることを分かりやすく書いた、みたいな内容だ。 また、紹介するコードはRubyに特化したものになっているが、概念としては特定のプログラミング言語に依存しない、考え方そのものについて書いているつもりだ。 対象とする読者層 対象とする読者は、プログラミング経験1年以上、設計工程よりも実装工程をメインに担当していて、コーディングしてテストしての

    現場で役に立つ!最小限の修正で仕様変更に対応する方法(Ruby) - Qiita
    mas-higa
    mas-higa 2019/12/06
    “Ruby ならではの方法” この発想はなかったわー。/ この元々の設計が悪い感。でもありそう感。(実際にあったんだろうなぁ)
  • やはり俺の「質 v.s. スピード」はまちがっている。 #eof2019 - 名前考えるの苦手

    2019/10/31(金)に開催されたEngineering Organization Festival 2019 で @t_wada さんの「質とスピード」という講演を聞き、とても感銘を受けたのでメモ。 品質とスピードはトレード・オフの関係にある。どちらを優先するか?要バランスだ。 そう思っていた時期が私にもありました。 けど、そんなことはなかった! ■追記 個人的な捉え方としては、 プロダクトを漸進的に成長させ、仮説検証ループするスピード上げようとすると、犠牲にした保守性があとで(意外とはやく1ヶ月後には)足枷になる。 保守性(テスト容易性、理解容易性、変更容易性)が低いとリードタイムが延びてスピードがどんどん落ちていくループをまわせなくなる。ってことかな、と思う。 スピードを上げようとしたのに、意外とはやくスピードが上がらなくなるジレンマ。 @t_wadaさんのスライド 素敵なグラレ

    やはり俺の「質 v.s. スピード」はまちがっている。 #eof2019 - 名前考えるの苦手
    mas-higa
    mas-higa 2019/11/01
    質のよいコードをスピード優先で書くって、それ優先してるの? 無能プログラマなのでテストには時間がかかる。その時間をくれとしか言えない。
  • プログラミングで一番難しいのは「見積もり」だと思う - Qiita

    前書き プログラミングで一番難しいところの一つは、「見積もり」だと私は思う。人から頼まれてプログラミングをする時、必ず最初に聞かれるのが「だいたいどれくらいで終わるか?」だ。厳しいところだと「何日に納品してくれるのか?」を問われる(むしろこれが普通かもしれない)。まっさらな状況から過去の経験を総動員してかかる時間を予想したり、可能な限りタスクに分解して時間を見積ったりするが、いつも不安に駆られる。多くの人も、見積もりに対して困難と不安を感じているのではないかと思われる。見積もりに対する自分の知識と経験を話して他の人にも参考にしてもらいたいと思って記事を書いた。 見積もりという言葉には色々な意味を含むが、今回の記事では「プロダクトをリリースするまでの期間の見積もり」から「頼まれた一つの機能の完成させるための期間の見積もり」までのスコープで話をしたい。 なぜ見積もりをしないといけないのか? 見

    プログラミングで一番難しいのは「見積もり」だと思う - Qiita
  • 一人でやってると個人開発と同じクオリティになる問題 - hitode909の日記

    たまに、今のこの状況は組織パターンに載ってたこのパターンだ、と思い出すことがある。数年前に読んでまだ役立ってるのうちのひとつ。 今は「常に誰かが進捗させる」というプラクティスをやっている。それ自体はいいのだけど、問題なのは、チーム内チームのエンジニア二人チームでやっているので、一人が進捗させる、もう一人が差し込み対応する、という最小の形になっていること。 奥さんが家でやってる生け花教室のホームページを作る夫、みたいなものをイメージすると、奥さんが生花を教えることで進捗させて、夫がホームページ更新など雑務を巻き取るという構造をイメージできる。百人以上の人間がいる会社であっても、夫婦の生け花教室と同じ数の人のアサインでことを進めているのだとしたら、推進力では同じくらいしか出せないはず。実際には百人いる会社には経理の人がいたり総務の人が居たり、資が潤沢にあったら良いパソコンを使えるとか、いろ

    一人でやってると個人開発と同じクオリティになる問題 - hitode909の日記
    mas-higa
    mas-higa 2019/09/19
    30年弱、ずっと生け花教室でやってる…
  • みずほ銀行の新システムがIBM×COBOLで昭和っぽさあるとおもったら逆で、みずほだけが「脱・昭和」できてたのか - in between days

    日経 xTECH(クロステック)で「35万人月、みずほ銀行システム統合の謎」というシリーズ記事が公開されている。 tech.nikkeibp.co.jp 出典は「日経コンピュータ」誌の2019年9月5日号で、32ページにわたる特集を全19の記事で構成している。 みずほシステム統合の謎、参加ベンダー「約1000社」の衝撃 | 日経 xTECH(クロステック) 有料会員向けの記事ということもあるんだろうけれど、上記のような一部記事だけが微妙なかんじでバズっていて、その記事を読むと、まあこういう感想になる。 みずほシステム統合の謎、参加ベンダー「約1000社」の衝撃 | 日経 xTECH(クロステック) 今年って昭和何年だっけ? “基盤とアプリ開発のベンダーが異なることで特有の難しさも生じた。富士通はIBMの基盤上で動作するCOBOLプログラムを開発しなければならなかった”2019/09/10

    みずほ銀行の新システムがIBM×COBOLで昭和っぽさあるとおもったら逆で、みずほだけが「脱・昭和」できてたのか - in between days
    mas-higa
    mas-higa 2019/09/17
    金勘定で COBOL はむしろ安心安全やな。
  • 大人数でプログラミングする時に気をつけていること(Java) | DevelopersIO

    1人もしくは(すごく能力の高い人だけの)少人数での開発と、大人数での開発ではプログラミングに対して気にするべきポイントに差があるような気がしています。 ここでいう大人数の開発とは、「プログラミングがどれくらいできるのか、自分が把握していない人がコードを書く可能性がある環境」を想定しています。 ここに挙げているポイントは「規模感に関わらず常に気にすべきこと」も含まれていますが、大人数になると特に問題が大きくなりそうなものをピックアップしてみました。 また、レビューに対する工数をすごくたくさんかけられる環境など、開発現場によっては当てはまらないものもいくつか含まれていますが、記事ではあまり気にせず思いついたものを羅列しています。 記事では基的に「レビューでつぶす」という解決方法はあまり考慮していません。粒度によりますが、当に厳密なレビューフローがないと、どこかのタイミングで読みづらいコ

    大人数でプログラミングする時に気をつけていること(Java) | DevelopersIO
    mas-higa
    mas-higa 2019/07/30
    コード読めない人のためにコメント書いてもなぁ。仕様書は書かない文化なのかなぁ。コメントにはせめて Why を書いて欲しいなぁ。
  • セブンペイ問題の根本要因。日本の悪習慣「ウォーターフォール」 - まぐまぐニュース!

    鳴り物入りで導入されるもすぐに大規模な不正アクセスが発生、セブンイレブンという企業自体のITリテラシーを疑われる事態にまで発展してしまった、セブンペイ問題。なぜこんなことになってしまったのでしょうか。世界的エンジニアアメリカ在住の中島聡さんは今回、自身のメルマガ『週刊 Life is beautiful』で、いびつで時代遅れな開発体制を持つ日ITゼネコンと、そんな組織にセブンイレブンが開発を委託したところに根の原因があると指摘しています。 ※ 記事は有料メルマガ『週刊 Life is beautiful』2019年7月16日号の一部抜粋です。ご興味をお持ちの方はぜひこの機会に初月無料のお試し購読をどうぞ。 プロフィール:中島聡(なかじま・さとし) ブロガー/起業家/ソフトウェア・エンジニア、工学修士(早稲田大学)/MBA(ワシントン大学)。NTT通信研究所/マイクロソフト日法人/

    セブンペイ問題の根本要因。日本の悪習慣「ウォーターフォール」 - まぐまぐニュース!
  • コードレビュー ありがちな問題への対処例 - Crieit

    コードレビュー、これまでいろんなプロジェクトで経験して、意外と使われていないノウハウがあったり、風習が違ってつらみがあったりしたので、いろいろまとめてみる。 指摘事項について よくある話 - 駄目コードを憎んで人を憎まず。駄目なのはコードであって人格じゃない - 指摘する人は人格攻撃せずにコードのどこが悪いのかを指摘しましょう - 指摘される人も、言われているのはコードの問題であって人間の問題じゃないので、素直な心で受け止めよう この辺はみんな知ってると思うので略。ぼくが思う大事なルール コードレビューで指摘された内容は、対応必須ではない 理由: 対応必須にすると、「これ言ったらリリースできなくなるよね」みたいな忖度が発生してコメントできない人が出現するから。 絶対ダメとは言わないけど、あまりよくはない、みたいな指摘については、そのときは急ぐからリリースするけど、次回から気をつけるとかがあ

    コードレビュー ありがちな問題への対処例 - Crieit
  • 拝啓、お客様。Webサイト制作のコストはここにかかります。 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

    令和ですね。こんにちは。バックエンドエンジニアのまさくにです。ゴールデンウィークで休んでいたら、シュワシュワと筋組織が融解し、「自然に帰ろう……自然に帰ろう……」と遺伝子に刻み込まれた内なる声が僕を光射す方へ誘いました。もはや社会復帰は難しいかもしれない。 さて。さてさて。 皆さま、いかがお過ごしですか。新しい期に入り、心機一転したい気持ちでしょうか。何ならアレですか。お持ちのWebサイトをリニューアルしたい、そんな気持ちをそろそろお持ちでしょうか。 失礼ながら、そのお気持ち、 たぶん5ヶ月、遅いです! 仕事としてWebサイトの制作に携わってから、5年くらいが過ぎました。現在はバックエンドの作業を行いながら、TD(テクニカルディレクション)やPMプロジェクトマネージャー)として、プロジェクトに関わることも増えてきています。その観点から言って、お客様と我々の間には「Web制作」の考え方にお

    拝啓、お客様。Webサイト制作のコストはここにかかります。 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
    mas-higa
    mas-higa 2019/05/10
    IE 対応ですね。わかります。
  • はてなブックマーク - GitHubがダウン 「データストレージシステムに障害」 - ITmedia NEWS

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    はてなブックマーク - GitHubがダウン 「データストレージシステムに障害」 - ITmedia NEWS
    mas-higa
    mas-higa 2018/10/23
    push するまで一切テストなしってことないだろ。CI 通らないとリリースできないってのはあるだろうけど、全部手動でやればいいよね。1日に何度もリリースするような職場、そんなに多いの?
  • メルカリは開発組織を拡大するためにマイクロサービスアーキテクチャを採用した(前編)。Mercari Tech Conf 2018

    2013年から2017年のあいだ、スタートアップを含む2000以上の組織に対して、いかに組織のパフォーマンスを加速するかという聞き取り調査を行い、その調査結果をまとめたものです。 その調査結果のひとつにこのグラフがあります。 これは組織のエンジニアの人数とそのパフォーマンスを、組織の違いによって示したものです。 横軸がエンジニアの人数、縦軸はエンジニアあたりの1日のデプロイ数を指標としたパフォーマンスです。 これによると、パフォーマンスの低い組織はエンジニアが増えるとデプロイ数も減少しています。普通のパフォーマンスの組織はエンジニアが増えてもデプロイ数に変化はありません。 一方でパフォーマンスの高い組織はエンジニアが増えるほど指数関数的にデプロイ数が増えていきます。メルカリが目指しているのはここです。 これは単純にアーキテクチャをモノリシックからマイクロサービスへ移行するだけでは実現できま

    メルカリは開発組織を拡大するためにマイクロサービスアーキテクチャを採用した(前編)。Mercari Tech Conf 2018
  • 開発中の機能を小分けにして本番環境にどんどん出すためには - hitode909の日記

    ふだんの開発では,稼働中のシステムに影響を与えないように開発中の新機能や新システムを共存させながらちょっとずつデプロイして進めている.どんな事を考えてやっているか記しておきます. フィーチャートグルを使う すべてのコードが番環境に入っているけど無効化されている状態で開発を進める ブランチをたくさん作るのに対する考え方で,フラグを有効にすると開発中の機能を使える スタッフなら有効にしたり,フィーチャーのオンオフを選べる画面を作ってたこともある フィーチャーブランチを利用した開発はチームを継続的インテグレーションから遠ざける – ゆびてく FeatureToggle 完成したらフィーチャートグルに関係なく全員に有効状態にして完成 フロントエンドの施策で,実際のデータやインフラ構成でどれくらいスピードが出るかわからないときに,ひとまずフラグをオンにすると動く形でデプロイしたりとか レイヤの下の

    開発中の機能を小分けにして本番環境にどんどん出すためには - hitode909の日記
    mas-higa
    mas-higa 2018/09/04
    下のレイヤから作って CI も通っていても、最後に外から呼べるようになったらビックバンが来そうでこわい。
  • メテオフォール型開発 - 実践ゲーム製作メモ帳2

    今日は、日の代表的なソフトウェア開発手法について紹介しよう。 その名も、メテオフォール型開発である*1。 第一節 通常のウォーターフォール型開発におけるプロジェクトはこのような形を取るが、 メテオフォール型開発ではこのような形が取られる。 そしてこうなる。 これはアジャイル型開発手法におけるサイクルであるが、 神の前では無力である。 神の一声は全てを崩壊させ、 民は一生懸命これを再建す。 これが、メテオフォール型開発*2である。 第二節 全てのスケジュールは天界の都合によって決まる。これを黙示録と呼ぶ。 ソフトウェア開発においてフィードバックは重要なファクターだが、 神にフィードバックは届かない。 ただし、祈りを捧げることはできる。この祈りはごくまれに届く。 神は様々な姿を取る。 外から現れることもあれば、 内に棲んでいることもある。 あるいは、まだ会っていない or 会うことすらできな

    メテオフォール型開発 - 実践ゲーム製作メモ帳2
    mas-higa
    mas-higa 2018/06/07
    笑えない
  • コーディングをするときに鼻血がでるほど便利なwebツールリスト - Qiita

    普段お世話になっているwebツール達の紹介です。 以下のサイトはすべて 無料 & 登録不要 です。 正規表現 regexper 正規表現を可視化してくれます。 複雑な正規表現を書くときやコードリーディングのお供に重宝します。 Rubular Rubyの正規表現をテストできます。 JSON JSON FORMATTER & VALIDATOR JSON系のツールが集まったサイト。 それぞれ、サイト名とドメインが違うのでリンクはそのうちの1つになっています。 (画像クリックでそれぞれのツールに飛べます。) ひとつずつ紹介します。 JSONをフォーマットしてくれます。 出力結果は折りたたむことができるので、長いJSONを読むときにも便利です。 JSONを含めた様々なデータ形式を変換できます。 Inputの以下に対応。 CSV INI JSON XML YAML Outputは以下に対応。 JSO

    コーディングをするときに鼻血がでるほど便利なwebツールリスト - Qiita
    mas-higa
    mas-higa 2018/05/14
    Ruby の正規表現なんて irb で試せばよくないか?