サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
レイングッズ
codezine.jp
自動テストを始めるBtoB:Webサービス企業の事例 続いて浅黄氏は、自動テストに取り組む2つの企業の事例を紹介した。 まずは、BtoBのWebサービス企業がテスト自動化に取り組み始めた事例だ。WebサービスなのでフロントエンドはJavaScriptで、バックエンドにPHPで作られたものとJavaで作られたものという2つのシステムがあった。この会社で課題だったのは、リグレッションテストがうまくできていないことだった。ウォーターフォールで開発していて、テストケース自体は数百と作ってあったが、それをすべて手動で回していた。そうするとテストをやり切れず、結果としてユーザーが不具合を見つけてしまい、サポートに連絡がきて調査に追われる。そういう状態が繰り返されていた。 「アップデートで動かなくなったところがないか、不具合が発生していないか、ちゃんと確認したい。毎日自動テストが動いている状態にしたい。
システム開発においてテストの自動化は欠かせない要素になってきている。継続的に開発を進めながらサービスを成長させるモダンな開発スタイルは、高い頻度でテストすることで品質を担保しているからだ。一方、自動テストを実施したいと考えながらも、実行まで至らない、実行し始めてもうまく継続できていないという開発者も少なくないだろう。本セッションでは、ソフトウェアテストの専門企業である株式会社ヒューマンクレストの浅黄友隆氏が、UI層を操作するE2Eテストの自動化の取り組みについて具体的に紹介した。本レポートでは、自動テストを進める際に現れる2つの山と激しい環境変化にどのように対応するのか、そのポイントを解説する。 自動テストを進めるうえで直面する2つの課題と環境変化 株式会社ヒューマンクレスト 取締役 兼 技術推進本部 本部長 / テスト自動化研究会(STAR) 浅黄友隆氏 セッションの前半で、浅黄氏は自動
怖くなくなるためにKubernetesを知ろう セッション冒頭、高橋氏はKubernetesの持つ3点の特徴を挙げた。 障害発生時に、各コンテナの設定・復旧を簡単にする コンテナの仕様の管理を簡単にする 複数台サーバを利用してコンテナを起動したいとき、最適な起動先の決定を簡単にする 1.については、NGINXのコンテナが2つ欲しいというケースを例示した。「Kubernetesは2つのコンテナが起動している必要があるということを理解し、2つのうち片方のコンテナがクラッシュした際は自動的に復旧する」(高橋氏)というReconciliation Loopを行うことがKubernetesの特徴の1つだという。 2.は「マニフェストファイル」と呼ばれる、YAMLで書かれたファイルを利用して各設定を管理することができるという点だ。Kubernetesではインフラの設定をコードで書くという「Infras
CAMELORSは、同社の運営するフリーランス・複業・副業の求人マッチングサービス「SOKUDAN(ソクダン)」に掲載されている実際のフリーランス・副業案件に基づいて作成した、2024年のフリーランス・副業における「案件が多いフレームワークランキング(プログラミング言語)」を、4月16日に発表している。 同ランキングでは、「React」が案件比率38.9%で1位を獲得し、平均月収でも111万円で1位となった。以下、「Vue.js」(20.5%)、「Laravel」(13.6%)が続いている。 Reactは、Google、Facebook、Instagramなどの大手企業で採用されている人気の高いJavaScriptフレームワークで、Webアプリケーション開発やモバイルアプリ開発に広く使用される。 Vue.jsは、Webアプリケーション開発に特化したJavaScriptフレームワークで、Re
調査結果によれば、企業内でAIの可能性についての議論はますます活発化している一方で、調査対象者の全員がAIに潜むセキュリティリスクについて懸念していると答えており、51%が生成AIの採用を適切なガイドラインが整うまで見送るべきだと回答した。 調査対象者は、先進技術の潜在的なビジネス上のメリットと未来についてもっとも関心を持つ立場であり、46%が早急に生成AIの採用を進めなければ、競合に遅れを取る恐れがあると考えている。一方で、4分の1の調査対象者が生成AIを信頼していないと回答した。 その他のおもな調査結果は以下の通り。 50%が企業の評判に生成AIがもたらすリスクについて懸念していると回答 51%が著作権や法的リスクが非常に不安であると回答 51%が適切なガイドラインが整備されるまで生成AIの導入は検討していないと回答 正式なガイドラインを策定済みの企業は29%に留まり、66%はこれらの
型システムに関する新機能リスト 本連載は、TypeScriptのバージョン3から5.2までのアップデート内容を、テーマごとにバージョン横断で紹介する連載です。第3回である今回紹介するのは、TypeScriptの根幹ともいえる型システムの変更点です。具体的には、以下の内容を順に紹介します。 ジェネリクスと「...」に関する新機能 constキーワードに関する新機能 型定義におけるテンプレート文字列 Mapped型での再マッピング インデックスシグネチャの新しいキー catchブロック変数でunknownが可能 returnのない関数の戻り値 ジェネリクスと「...」に関する新機能 最初に紹介するのは、ジェネリクスと「...」演算子に関する新機能です。 ジェネリクスとスプレッド演算子の組合せ 例えば、個人情報を表す型定義としてPersonalBaseDataがあり、プロパティとしてid(num
典型的なソフトウェア劣化パターン6種類 続いてインディ氏は、ソフトウェアの劣化について話を向けた。ソフトウェアの劣化は、開発プロジェクトでよく見られる現象であり、新製品の開発時にはソースコードが比較的シンプルであり、正しいアーキテクチャを持ち、複雑化していないため容易に理解できる。しかし、機能の追加が進むにつれて複雑度が増し、設計が急速に複雑化し、人間が理解しづらい状態に陥る。すると、新たな機能の追加、エラーの修正、バグ修正のコストが大幅に増加する。これにより、計画された製品ライフサイクルが終わる前に製品の維持が困難となってしまう。 機能性が高まると、それ以上にソフトウェア劣化の可能性が高まる ソフトウェアコードの複雑さや複雑度が発生する背景には、複数の劣化の種類が存在する。インディ氏は、自動車のダッシュボードに温度を表示するシステムを例に紹介した。センサーが温度を摂氏で測定し、その後で単
シュトゥットガルト大学の研究から始まった静的解析ツールAxivion Suite Qt Groupは、"Code Once, Deploy Everywhere"のタグラインの下、1995年からクロスプラットフォーム開発フレームワークを提供してきた。開発プロセスの課題に応えるために品質保証ツールの範囲を拡大し、2021年にはfroglogicを買収して、GUIテストの自動化ツールであるSquish、コードカバレッジツールのCoco、そしてテスト結果管理ツールのTest Centerなどの製品ラインを強化した。さらに、2022年にはソフトウェア劣化を防ぐための静的解析とアーキテクチャ検証ツールを提供するAxivionを買収した。 インディ氏は20年以上にわたり、大手からベンチャーまでさまざまなハードウェアとソフトウェアの開発に携わってきた。2022年にQt Groupに参加し、ソリューション
wasm32-wasip1は、既存のWASIターゲットであるwasm32-wasiの名前を変更したものであり、2025年1月5日(現地時間)にリリースされる「Rust 1.84」ではwasm32-wasiが削除されることから、その前に新ターゲットへの移行が推奨される。なお、wasm32-unknown-unknownとwasm32-unknown-emscriptenは、この変更の影響を受けない。 今回の名前変更は、最終的なWASI 1.0ターゲットを見越してターゲット名の一貫性を維持すべく行われ、9月5日(現地時間)にリリースされるRust 1.81では、wasm32-wasiを使用しているユーザーに対してwasm32-wasip1への移行を促す警告表示が行われるようになる。最終的に、Rust 1.84ではwasm32-wasiが安定版リリースチャネルでは提供されないようになる。 そのほ
CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
生成AI時代のエンジニアに必要な「AIネイティブ開発」とは 「AIネイティブ開発」とは、さまざまな用途でAIを活用しながら開発することだ。新田氏は「例えば仕様を満たすコードの生成や、バグの原因の探索、コードの要約など多様な用途で活用できます。エンジニアもAIと働く時代です」と説明する。 株式会社ギブリー 取締役 兼 Trackプロダクトオーナー 新田章太氏 エンジニア領域で生成AIの利用が広がっていることは、調査データからも明らかだ。会場でも「業務に生成AIを取り入れていますか」と問いかけると、参加者の50%ほどが手を挙げた。 その中でも特に注目されているツールが「GitHub Copilot」だろう。GitHub CopilotはAIペアプログラマーであり、AIが開発者に代わってコードを自動生成し、提案する。 GitHub Copilotを使ってWebサーバーをJavaScriptで実装
本書はLinuxによるWebサーバー構築と運用について、Linuxのインストールや基本的なコマンドからセキュリティ対策やDockerのコンテナ作成まで、サーバー業務で必要な知識をひととおり解説した入門書です。8年ぶりの改訂となる今回の第2版では、ディストリビューションをCentOSからRocky Linuxに変更しました。 実際に手を動かして実用的なノウハウを学ぶことを重視し、Webサーバーの構築演習としてLAMP(Linux、Apache、MariaDB、PHP)環境を構築。CMSとしてWordPressを利用しながら、Webページの作成をはじめ、ログの解析、ファイヤーウォールの設定などについて解説しています。 クラウドとオンプレミスを組み合わせたサーバーを運用する企業が増えている中、LinuxでのWebサーバー運用がインフラエンジニアやWebエンジニアに求められています。現場で通用する
本書はPythonのオンライン学習サービス「PyQ」の人気コンテンツである「数理的アプローチによる問題解決」を書籍化したものです。 近年、様々な問題を解決する手段として数理最適化(数理的アプローチ)が利用されるようになっています。本書ではこの数理最適化をPythonで実践し、問題を解決する体験ができる入門書です。 理論的な難しさから初心者が挫折しがちですが、本書では理論の詳細よりもPyhonのコードを中心に解説。コードを書いて問題解決をしてみることで、数理最適化への理解も深まります。 本書で取り上げる問題は「輸送費を減らす」「もっと食べたくなる献立をつくる」「お酒をわける」「シフト表を作る」といった身近なもの。学んだことを応用すれば、仕事や日常の問題も解決できるようになるでしょう。 目次 Prologue 第0章 本書の使い方 第1章 数理最適化による問題解決 第2章 数理モデルって何だろ
ポリレポ開発で生じていた3つの問題点とは バクラクシリーズは、「バクラク経費精算」「バクラク請求書受取」「バクラク請求書発行」「バクラクビジネスカード」「バクラク申請」「バクラク電子帳簿保存」の計6つのプロダクトを擁しており、プロダクト間でのなめらかな連携を強みの一つとしている。 バクラクシリーズの前身となる「LayerX インボイス」は、2020年7月から開発に着手し、2021年1月に提供を開始した。BtoB取引マーケットのセンターピンである請求書の受取業務を対象としたものである。 その後、近接領域から徐々にビジネスドメインを拡大していく。2021年4月に「LayerX ワークフロー」を、2021年11月に「LayerX 電子帳簿保存」を提供開始しており、2021年12月にはバクラクブランドへとリニューアル。さらに2022年8月に「バクラクビジネスカード」で決済事業への参入を果たし、20
なぜテスト自動化に挑戦するのか? ビットキーの取り組みを紹介 まずセッションの冒頭で、おだしょー氏がmablの特長について説明した。 mabl株式会社 Quality Advocate / Product Marketing おだしょー(小田祥平)氏 「mablは“めいぶる”と読みます。現在ではGoogle Cloud Operationsと呼ばれている『Stackdriver』の創業者であるIzzyとDanが2017年ボストンで創業しました」(おだしょー氏) 同社が提供している同名のサービス「mabl」は、DevOpsに適したテスト自動化プラットフォームである。ノーコードでUIテスト・APIテスト・ネイティブのモバイルアプリテスト(現在は早期アクセス)に対応しており、単一プラットフォーム上でアクセシビリティやパフォーマンステストも実行できるといった多くの特徴を備えているという。 DevO
書店員との対話で、メール技術書の不足に気づく 増井氏は技術士として関連知識の教育を提供するとともに、プログラマーとしても活躍している。ネットワークや情報セキュリティの分野でテクニカルエンジニアとしての役割を果たし、情報処理技術者試験やビジネス数学検定1級などの資格試験にも多数合格。ソフトウェア開発では、ビジネス、数学、ITを融合させ、コンピュータの効率的かつ正確な使用法を支援している。 教育の一つとして本を執筆する活動もしており、『Obsidianで“育てる”最強ノート術』(技術評論社刊)『1週間でシステム開発の基礎が学べる本』(インプレス刊)『「技術書」の読書術』『図解まるわかり セキュリティのしくみ』『図解まるわかり プログラミングのしくみ』(翔泳社刊)など多数の書籍を執筆。個人でも同人誌づくりをしたり、シェア型のリアル書店で自身の書籍を販売したりするなどの活動も行っている。 増井氏は
米Microsoftを中心とした、HTML5経由でWebブラウザにリアルタイムで3Dグラフィックを表示するためのJavaScriptライブラリおよび3DエンジンであるBabylon.jsの開発チームは、最新バージョンとなる「Babylon.js 7.0」を3月28日(現地時間)にリリースした。 Babylon.js 7.0では、プロシージャルジオメトリ(ノードジオメトリ)、グローバルイルミネーション、ガウススプラットレンダリング、ラグドールアニメーション、WebXR、Apple Vision Proのサポートが追加されている。 さらに、Web上でのリアルタイムアニメーションを強化すべく、アニメーショングループをブレンドしてアニメーションの特定の部分をマスクする機能、Web上での最先端のレンダリングを追加するDispersionおよびAnisotropy glTF拡張機能がサポートされた。
「Code Scanningの自動修正機能」は、JavaScript、TypeScript、Java、Pythonのアラートタイプを90%以上カバーし、検出された脆弱性を編集することなく修正できるコードを提案する。 同機能では、サポート対象言語で脆弱性が検出された場合、修正提案には提案された修正に関する自然言語での説明とコード提案のプレビューが含まれる。開発者はこのコード提案を受け入れて編集、または却下することができる。これらのコード提案には、現行ファイルへの変更に加えて、必要に応じて複数のファイルへの変更、プロジェクトに追加すべき依存関係も含まれる。 GitHub Copiloが開発者を煩雑な反復作業から解放するように、同機能によって、開発チームはこれまで修復に費やしていた時間を削減することができる。さらに、セキュリティチームにとっても、日常的な脆弱性の量が減ることで、加速し続けるソフト
エンジニアとしていい仕事をするために、そして成長するためにはビジネスに対する理解も進める必要がある。とはいえ、技術とビジネスの二刀流を実現するのはなかなか大変だ。30年にわたり、「テクノロジーとコンサルティングの融合」に取り組んできたビッグツリーテクノロジー&コンサルティング(以下、BTC)のCTOである高安厚思氏が、業界経験で出会った「すごいエンジニア」との対話を紐解きながら、エンジニアの成長について語った。 高安氏が30年の業界経験から考える「すごいエンジニア」とは? 30年にわたり、ソフトウェアエンジニアリングを適用したシステム開発やコンサルティングに携わってきた高安氏。アーキテクトとしても活躍し、『システム設計の謎を解く』(SBクリエイティブ)など、著書も多数持つ。同氏がCTOを務めるBTCでは、チームとして仕事を進めるに当たり「テクノロジーとコンサルティングの融合」が不可欠と考え
進化を続ける生成AIの最前線、ChatGPT。既に多くの業界で注目される中、まだこの革命的な技術を手にしていないあなたへ。本連載では、具体的なコードを交えながら、ChatGPT APIの可能性とその活用法を徹底解説します。今回は、ChatGPTをさらに使いこなすための「プロンプトエンジニアリング」について紹介します。 はじめに 前回までの記事では、ChatGPTに興味はあるものの、活用イメージがわかない方々に向けて、ChatGPT APIを利用するとどのようなサービスが開発できるのかを中心に具体定な実装を交えてご紹介してきました。今回は最終回として、ChatGPTのみならず全てのLLMを扱う上で重要となる、プロンプトエンジニアリングについて解説します。 プロンプトエンジニアリングとは 大規模言語モデル(LLM)を利用するにあたって、モデルに入力する文章を主に「プロンプト」と呼びます。このプ
この連載では、開発者の皆様がシステム・アーキテクチャやアプリケーション・コードをより洗練させるのに役立つデータベース・マネジメント・システム(DBMS)の基本を振り返り、実装に合った技術の組み合わせを解説します。クラウドの登場によりハードウェア・リソースの調達は容易になりましたが、データベース・エンジンがシステムを稼働させたままハードウェア・リソースを動的に増減できるかというのはまた別の話です。今回は、データベース・エンジンのリソースを動的に増減させる実装について紹介します。 はじめに この連載は、第1回に紹介したDBMSの3階層構造における「アーキテクチャと実装」についての技術の紹介から始まり、第8回からはアプリケーションから見たデータ操作階層である「データ・モデルとデータ型」についてお伝えしてきました。 データベースは巨大なデータ量を扱うため、ハードウェアのリソースも大量に必要になりま
Linux Foundationは3月18日、環境に優しいアプリケーションの構築・保守・実行に関する基本的な知識を学習できる無料オンラインコース「グリーンソフトウェア 実践(LFC131-JP)」を発表した。このコースは、英語で提供されている「Green Software for Practitioners(LFC131)」を日本語で受講できるようにしたもの。 現在、環境に優しいグリーンソフトウェアへの関心が高まっている。しかしその構築には、従来のカリキュラムではカバーできない専門的な知識が必要であり、さらに共通言語や標準化された用語の不足から、プロセスが複雑化している。このため、業界全体の連携した取り組みが進展しにくい状況にある。 また、企業がグリーンソフトウェア開発に取り組む際には、開発チームがグリーンソフトウェアの原則を理解していることが重要。そのため、環境に配慮した原則について、最
次のページ
このページを最初にブックマークしてみませんか?
『CodeZine:プログラミングに役立つソースコードが満載な開発者のための実装系Webマ...』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く