GoFの23のデザインパターンの1つであるシングルトンに対しての、Swiftとしての付き合い方について思うところをつらつらと書いていきます。ちなみに、記事中盤くらいからが本題です( ´・‿・`) Design patterns] solve specific design problems and make object-oriented designs more flexible, elegant, and ultimately…
![Swift におけるシングルトン・staticメソッドとの付き合い方](https://cdn-ak-scissors.b.st-hatena.com/image/square/ba4bf9ad51f33ff53b12d81ed670add16976d4f9/height=288;version=1;width=512/https%3A%2F%2Fmiro.medium.com%2Fv2%2Fresize%3Afit%3A1200%2F1%2AZK1ghg4ccoyqCX2wMQL69Q.png)
Today we’re releasing Kotlin 1.2. This is a major new release and a big step on our road towards enabling the use of Kotlin across all components of a modern application. In Kotlin 1.1, we officially released the JavaScript target, allowing you to compile Kotlin code to JS and to run it in your browser. In Kotlin 1.2, we’re adding the possibility to reuse code between the JVM and JavaScript. Now y
※ モバイル関連のセッションにて発表されましたが、 AWS AppSync はモバイルのみがターゲットというわけではないため、タイトルを修正しています。フィードバックをくださった方々、ありがとうございます。 Mobile Application Development: State of the Union のセッションの中で新サービスの発表がありました。AWS AppSync です。 クロスプラットフォームでデータのリアルタイム同期を行うために、GraphQL をベースとしたアプリケーションのバックエンドを提供してくれます。 11月28日 12:30PST ( 11月29日 5:30JST ) 現在、プレビュー版利用のための申請をフォーム準備中です。本日中に申請できるようになるそうです。以下のURLをチェックしてください。 https://aws.amazon.com/appsync/
Slackのユーザーステータス、使ってますか?Slack上で絵文字+テキストによって自身の状態を示すことができる機能。 メッセンジャー系ソフトウェアの機能としては目新しいものではないが、コミュニケーションの質を向上させるポテンシャルがあるなと感じている。 リモートワークとステータス リモートでは基本のやりとりは非同期だが、たまーに同期的なコミュニケーションが必要なときに相手がどんな状態でいるのかを知りたいときがある。 自分の状態を示したいときもある。カフェで仕事してるときとか。 この状態のやりとりにSlackのステータスがうまく機能するようにできればいいのでは?と考えた。 最近移転した弊社オフィスを作業場所として使うことが多くなってきたので、オフィスに誰がいるのかを把握するのにも使えそうだな〜と思っていたところ、次のようなエントリを読んだ。 ステータス変更を自動化する polidog.jp
DroidKaigi2018のチケット販売が開始されました。公式アプリのリポジトリはどこにあるのか?いつ公開なのか?といった声を何度か見かけたので、2018の方針やスケジュールを簡単に書いておこうと思います。 過去の公式アプリ DroidKaigiでは、2016年、2017年の2回の公式アプリをOSSで作り上げました。Contributeしていただいた皆さんのおかげで、とてもよいアプリを作ることができました。 この取り組みが始まった経緯や盛り上がりについては、以前書いた記事に少しまとめてあります。 konifar.hatenablog.com konifar.hatenablog.com konifar.hatenablog.com 2018公式アプリのAuthor 2016年、2017年は私がAuthorとして初期のプロジェクト作成、Issue整理、Pull Requestレビューなどを
言いたいことはタイトルの通りです。 c5meru.hatenablog.jp コードレビューをつらいと思う人がいるなんて自分には考えもしてなかったので、この記事には驚かされました。指摘を人格否定と思いがちな人がいるのか、人格否定かのような指摘をする人がいるのか、その両方かは分かりませんが、つらいですね。 プログラマである自分にとって、結果という変わらないものではなく、創意工夫を見せることができるコードを見てもらえる場所って一番の見せ場じゃないですか。プロのスポーツ選手だって成績という数字も大事だけれど、いかに試合でファンを魅了できるかも大事だと思うんですよ。だったら、プロのグラマーである我々も品質とか効率とかの数字だけでなく、レビューという最高のステージでレビュアを魅了させてこそだと思うんです。特に、難しいプログラムを任されるようになってからは、いかに難しい仕様を分かりやすくコードに落とし
最初にいっておく。これは負け惜しみだ。 SPAとPWAの現状 自分は日本でReactの勝手エヴァンジェリストみたいなことをやっていて、SPAの重めのコンテンツをよく作ってるからか、「お前らフロントエンドを物事をややこしくして、重いページを量産してウェブを劣化させてるじゃないか!」みたいな批判を、名指しでよく受ける。なんで僕にいうかわからないけど、React = SPA みたいなイメージでスケープゴートにされてるんだろう。それはまあいい。 自分の仕事でSPA技術を使うところは、ちゃんと必要性もあるし理由も説明できる。ただ、やはり近年の複雑化/重量化について思うところはあるので、逆に振って AMP/PWA という選択肢を持っておきたくて、正直言うと依頼されたR&Dの仕事でもあったんだけど、一通り覚えた。なんだけど、今のところ仕事で使うタイミングがない。 PWA技術を仕事で使えなかった理由として
2017年10月28日、福岡県の九州産業大学にて、コンピューターエンターテインメント開発者向けのカンファレンス“CEDEC+KYUSHU 2017”が開催。本記事では、同カンファレンスにて行われたセッション“ペルソナシリーズにおけるUIクリエイティブの手法 ~ペルソナ5のUI事例~”のリポートをお届けする。 本セッションに登壇したのは、アトラスの和田和久氏と須藤正喜氏。和田氏はデザイナーとして入社後、さまざまな作品に携わり、現在は『ペルソナ』チームを統括しつつ、『ペルソナ3 ダンシング・ムーンナイト』、『ペルソナ5 ダンシング・スターナイト』のプロデューサーを担当している。須藤氏は、アトラス初のUI(ユーザーインターフェース)専属デザイナーであり、『ペルソナ5』ではアートディレクターとUIデザインリーダーを兼任。各種イベントのデザイン監修やプロモーション、ライツデザイン監修なども行っている
そういうときがよくあります。 コードレビューがある会社は今が初めてだけど、きっとこれから先もコードレビューがある限りは、なくならない気持ちなんだと思います。 だから、そんなときに振り返れるようなものを残しておきます。 「コードレビュー つらい」でググってみると、はてな匿名ダイアリーのこんな記事が見つかりました。 anond.hatelabo.jp さすがに、ここまでヒドいケースを経験したことはないし異常だと思ったけれど、以下のくだりは自分の胸にすごく刺さりました。 私はプログラマに向いていないんじゃないかと思う。よいプロダクトを作る上で強い言葉を交えた議論が必要不可欠ならば、それに強いストレスを感じてしまう私はプログラマとして適正がないのでは? 刺さったのですが、それでも自分はここでやっていかなくちゃならないと思っているので、つらくなったときにいつでも読み返せるよう、見つけた記事・資料をま
github.com AssemblyScriptという、TypeScriptのサブセットでありWebAssemblyにコンパイルできる言語があります。 ※ WebAssemblyについては WebAssembly の基礎 - nmi.jp などをどうぞ TSのサブセットとはいえ、WebAssemblyにコンパイルしやすくするために若干互換性がない部分もあります。たとえば、 || や && といった演算子の結果はJSだと左辺ないし右辺の値ですが、ASの場合はboolになります。 とはいえ assembly.d.ts のおかげで普通にvscodeで開発できるので、生のWebAssemblyを書くよりはだいぶマシでしょう。 標準ライブラリは std/ 以下をみるといくらか定義されていて、たとえばstring.tsをみると文字列操作の様子がわかります。 https://github.com/As
みなさまへのお願いごと 間違いなどの指摘は、編集リクエストでお願いします。 コメントの記載はページが長いこともあり、お控えください。 TOEIC900でも英語が話せない日本人へ ITエンジニアの私がなぜ令和の今、中国語を学ぶのか? 名詞/イディオム gotcha はまりポイント。注意すべきこと。引っ掛け。 Got you のくだけた表現。捕まえた、誰かをトラップに引っ掛ける、という意味から。 注) 一般的には、Got itやYup、I seeのような、同意の返事でよく使われる。 類) caveat, pitfall There are many gotchas in this application. sought-after (スキル、人材、機能、アプリが) 人気の、需要がある、求められてる、引っ張りだこ Python is a sought-after language. c-suit
KotlinConf 2017 の情報を追ったり、Ktor を見たりしているとコルーチンがよく出てくる。 コルーチンについては概要は知っているが詳細を追いかけていなかったので、コルーチンについて学んでメモ程度に記録しておく。 Kotlin 1.1 においてコルーチンは実験段階で、将来にはこのページの情報は古くなっているかもしれないので注意されたし。 本記事に書かれている内容 コルーチンとは何か コルーチンの実装がどこにあるのか (言語サポートと標準ライブラリと外部ライブラリ) コルーチンの基本的な使い方 コルーチンのキャンセル処理について コルーチンコンテキストについて チャンネル 並行性の問題 Select 文 Coroutine (コルーチン) って何? まずは公式リファレンスの情報を追う。 公式リファレンス : Coroutines - Kotlin Programming Lang
背景 : コルーチンの Select 式の実装を理解するのが難しかった コルーチンのドキュメントを読んでいて select 関数というのが出てきたのだけど、これの実装がどうなっているのかすぐにはわからなかった。 suspend fun selectFizzBuzz(fizz: ReceiveChannel<String>, buzz: ReceiveChannel<String>) { select<Unit> { // <Unit> means that this select expression does not produce any result fizz.onReceive { value -> // this is the first select clause println("fizz -> '$value'") } buzz.onReceive { value -> /
最近気づいたことがある。それは、僕はみんなみたいに複雑なことが理解できない、ってこと。 話をしてても「ごめんなさい。いまのわかんなかった。もう一回教えて欲しい。」とかよくあるし。ドキュメントも、ちょっと複雑なことが書いてあると、全然頭に入ってこない。 色んなルールがドキュメントに書いてあって、それをちゃんと守りながら開発してる人たちとか見てると、みんなすごいなぁって思うのであった。 なんだろうなぁ。こう・・・色んな想像が始まってしまって、考えが落ち着かないんよね。 そんな僕なのだけど、ここ数年はありがたいことに色んなコードを読む機会がある。読みやすいコードもあれば、パズルみたいに複雑なものもあって。そんな中で、たぶん、僕にとって読みやすいコード、というのは普通の人にとってはとても読みやすいコードなのかなぁって思って。書いてみる。 JavaでWebのアプリを開発してる。基盤とかフレームワーク
はじめまして、グノシー開発部新卒エンジニアの山本です。 主にグノシーのAndroid版や、最近リリースしたLucraのAndroid版を作ったり、サーバーサイドでGo/Pythonで開発をしたりしています。 少し時間が空いてしまいましたが、9月25~26日にニューヨークで開催されたdroidconNYC 2017に会社に費用を出してもらって参加してきました。 今回はそのレポートを書いていこうと思います。 droidconについて droidconとは世界各地で行われるAndroid専用のカンファレンスで、Android専用でいえば世界でも最大規模のカンファレンスです。 ニューヨークの他にもロンドンやベルリン等(日本はまだ😢)で行われ、終了後には各サービスでスライド等が盛り上がるので知ってる人も多いかと思います。 今回のdroidcon NYC 2017では70以上のセッションが行われ、9
.app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads
Cloud Firestoreファーストインプレッション リリース発表をついに来たか!って思いました。そしてFirestoreとFirebase Realtime Databaseがどう違うのかを読んで、大きく進化したなぁって思いました。そして実際に使ってみて、これはもはや別物って思いました。 FirestoreとFirebase Realtime Databaseの違いについてはすでにこちらでまとめられていたのでこちらをご覧ください。 https://qiita.com/Yatima/items/54ea22d0cea1acc6cbcb Cloud Firestoreのすごいところ FirestoreにはBoringSSLが使われている BordingSSLはGoogleによるOpenSSLのfork。2014年にForkを発表して、すでにAndroidなどでは使われていたようですが、本
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く