皆さん、おはようございます!マイクです。今日は2024年11月10日、土曜日ですね。今日も「zenncast」にお越しいただきありがとうございます!さて、今日はZennでトレンドの記事をいくつか紹介していきますよ。
まずは、前回紹介した記事ですが、今回は特に触れることはありませんので、さっそく今日の内容に移りましょう!
さて、今日ご紹介する記事は全部で5本です。まず最初の記事から行ってみましょう!
1つ目の記事のタイトルは【JavaScript】関数名をclose()にするのは気をつけろ、です。
この話は、JavaScriptにおいて`close()`という名前の関数を使う際の注意点についてです。筆者がモーダルコンポーネントを閉じるために作成した`close()`関数が、リファクタリング中に誤って消し忘れられた結果、ブラウザの組込み関数`window.close()`として扱われてしまったという経験が紹介されています。これにより、特定の手順を踏むとブラウザウィンドウが予期せず閉じてしまうという事態に。
この問題の根本には、`window`オブジェクトにある`close()`関数があるため、命名の衝突が発生してしまいます。未定義エラーにはならないものの、意図しない動作を引き起こすことがあるため、命名規則が非常に重要です。事故を防ぐためには、`close`や`open`のような一般的な単語を避け、具体的な動作を示す名前を使用することが推奨されています。
命名は開発の質にも影響を及ぼしますので、エンジニアは慎重に命名を心がけるべきですね。
さて、次の記事に移りましょう!。.
2つ目の記事のタイトルは、今Reactを使うならピュアなCSSをサポートするUIフレームワークやライブラリを選定するのがマルそうと思った話、です。
この記事では、個人開発でNext.jsを利用し、スタイリングについて再考した結果、ピュアなCSSを使うことが有益だと感じたことが語られています。ReactのスタイリングはCSS ModulesとCSS-in-JSの二大潮流から始まり、それぞれに利点と欠点があります。特に最近、ゼロランタイムCSS-in-JSが登場したものの、導入には慎重さが求められます。
そこで、JavaScriptからスタイリングを分離し、純粋なCSSを用いることが開発体験を改善する鍵だと考えられています。特にTailwindCSSは、自由なスタイリングができ、パフォーマンスにも優れています。また、CSSの知識を深めるためにも良い機会になりますね。
TailwindCSSと一緒に使うと良いのがHeadlessUIで、スタイルを排除したロジックのみを提供するため、セマンティックHTMLやアクセシビリティを考慮しつつ、クライアント・サーバーコンポーネントの概念に煩わされることなく開発が進められるんです。
最近のReact開発において、ピュアなCSSを選択するのは良いアプローチですね!それでは、次の記事に行きましょう!。.
3つ目の記事のタイトルは、SnowflakeのSQLにおける「*」(アスタリスク)の便利な利用法、です。
Snowflakeでは、SQLの「*」はSELECT句で全列を簡単に参照するためのワイルドカードとして利用されます。ただし、パフォーマンスの低下やクエリの可読性を考慮すると、アスタリスクの使用はベストプラクティスではありません。しかし、データの確認や分析過程では非常に便利なんです。
Snowflakeでは、アスタリスクを組み合わせて使ういくつかの特殊な文法が提供されています。例えば特定のカラムを指定しつつ全列を取得することができたり、特定のカラムを除外して全列を取得することも可能です。これらの機能は特にデータエンジニアや分析者にとって役立つものです。
Snowflakeの独自機能をうまく活用することで、データの取り扱いがより効率的になることが期待されますね!次の記事に移りましょう!。.
4つ目の記事のタイトルは、OpenAPI Generator 「Kiota」を使ってみよう、です。
こちらの記事では、OpenAPIを活用してAPIクライアントコードを生成する「Kiota」について紹介されています。Kiotaのプロセスは、まずOpenAPIの定義を行い、次にリソース構造やコードモデルを作成し、最終的に言語固有のソースコードを生成する流れです。
Pythonでの具体的な利用方法も紹介されていて、必要なKiotaのモジュールをインストールし、OpenAPI仕様書を作成してAPIクライアントを生成する手順が詳細に説明されています。生成されたクライアントクラスを使ってAPI呼び出しを行う方法も示されており、API開発チームと利用チームの連携がスムーズになることが期待されています。
生成AIを活用したAPIクライアント生成の可能性についても触れられていて、今後の展開が楽しみですね!それでは最後の記事に行きましょう!。.
5つ目の記事のタイトルは、Goのwasmで笑い男の顔はめサイトを作ってみた、です。
この記事では、人気SFシリーズ『攻殻機動隊 STAND ALONE COMPLEX』に登場する「笑い男」の顔はめサイトをGoのWebAssemblyを用いて作成した様子が語られています。顔認識にはGoで開発されたOSS「pigo」を使用し、アニメーション再現にはGoのゲームエンジン「Ebitengine」が利用されています。
顔の中心座標を取得後、アニメーションを再現するために様々な技術を駆使しているそうです。ただし、いくつかの問題も抱えているとのことで、今後の改善が期待されます。
さて、今日は5本の記事を紹介しました!それでは、今回お話しした内容を駆け足でおさらいしてみましょう。
1つ目はJavaScriptの命名規則、2つ目はReactにおけるピュアなCSSの選択、3つ目はSnowflakeのSQLにおけるアスタリスクの利用法、4つ目はOpenAPI Generator「Kiota」の紹介、そして最後はGoのwasmで作った顔はめサイトについてでした。
次回またお会いできるのを楽しみにしています!詳しい内容はショーノートに書いてありますので、ぜひチェックしてくださいね。そして、番組の感想もお待ちしています!それでは、今日も素敵な一日をお過ごしください!ありがとうございました!