PHP7.3.0 / PHP7.3.0α1 / PHP7.2 / PHP7.1 2018/06/07にPHP7.3.0 alpha1がリリースされました。 リリースノートはいつものようにFixed bugで埋まってますが、幾つかRFCで決定した新機能が取り込まれてるので見てみます。 RFC Flexible Heredoc and Nowdoc Syntaxes ヒアドキュメントとnowdocが微妙に使いづらかったのが改善されます。
![PHP7.3.0α1の新機能 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/e2bb3c740edb5cb96aad5042e2b3a65266bc647f/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9UEhQNy4zLjAlQ0UlQjExJUUzJTgxJUFFJUU2JTk2JUIwJUU2JUE5JTlGJUU4JTgzJUJEJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1hNzEyMmFlZmQ1NzcxZjMyMDQwOGU4Y2ExM2E5ZmVhYQ%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDByYW5hX2t1YWx1JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz03N2I2ZjE5MzhkZTc1YjA5MWI1MWQ2MDI4MjBkM2JhYw%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dd0d469ec37d37ed4d41ce0e460d3859d)
Objective-Cでは#warning 何かメモとコード中に書くことによって、明示的に警告を発生させることが出来ました。 きっと、たぶん、おそらく、めいびー: 「あとでやろう」ってときは #warning hoge これを埋め込んだ状態で、コミットや特にPUSHはするべきじゃ無いですが、開発中に手元の状態を一時的に変えたい時や、ファイルを行ったり来たりするときのブックマークとして便利でかなり活用していました。 ただ、Swiftコードではこのやり方が出来ず1、不便だなと思っていましたし、それが原因のミス(一時的に手元で弄って後で戻すつもりのものをコミットしてしまうなど)も発生したりでけっこう困っていました。 というわけで解決策です。 【2018/04/19追記】Swift 4.2以降の#warning命令を活用 コードに#warning("XXX")を書けば警告扱い、#error("XX
react-native-dom とは experimental と書いてあるが普通に動く。デモを見ると React Native で提供されている仮想 DOM は大体動くといった感じ。 2018 年の React Europe で発表された資料。 https://rndom-slides.vincentriemer.app/ https://www.youtube.com/watch?v=aOWIJ4Mgb2k これの何がすごいかというとブリッジの仕組みにのっとって構築されているところだ。 Native First と言っている。 ブリッジの仕組み iOS のブリッジの仕組みは次でまとめているので参照のこと。 https://speakerdeck.com/januswel/discussion-about-the-bridge https://qiita.com/janus_wel/i
よく見かけるRepositoryパターンのアンチパターンの紹介と対策です。 Repositoryパターンとは Repositoryパターンとは永続化を隠蔽するためのデザインパターンで、DAO(DataAccessObject)パターンに似ていますが、より高い抽象度でエンティティの操作から永続化ストレージを完全に隠蔽します。 例えばDBコネクションやストレージのパス等はReposiotoryのインターフェースからは隠蔽され、Repositoryのユーザは永続化ストレージが何であるか(例えばMySQLやRedis等)を意識することなく保存や検索の操作を行うことができるようになります。 これによりRepositoryを利用するロジックは業務的な操作に集中できるようになる他、データベースの移行等の永続化層の変更が発生した際にロジックへの影響を切り離すことができるようになります。 // 例) ユーザ
// シャッフルしたい配列を用意 var array = [0,1,2,3,4,5,6,7,8,9]; for (var i = array.length - 1; i >= 0; i--){ // 0~iのランダムな数値を取得 var rand = Math.floor( Math.random() * ( i + 1 ) ); // 配列の数値を入れ替える [array[i], array[rand]] = [array[rand], array[i]] } console.log(array);
を作りました。 takasek/MokuMokuNotes_iOS: Quest based learning tool for writing a basic iOS app https://github.com/takasek/MokuMokuNotes_iOS モチベーション 元々、 Androidエンジニアの@callipanが、私のAndroid入門のためにわざわざ コンパイルエラーやランタイムエラーを直していくだけでAndroidアプリの作り方がわかるプロジェクト を用意してくれたんですが、それがとても楽しかったのでiOS版を作りました。 (2018/5/12追記) インスパイヤ元であるAndroid版も、パワーアップして公開されました! panpanini/MokuMokuNotes_Android: Quest based learning tool for writing
(2021/12/5追記) 最新のOculusQuestの状況を https://qiita.com/wakufactory/items/b0fdf55da157e7a3346a に書きました。 OculusGoのブラウザは可能性を秘めている 話題沸騰のスタンドアロン型VRゴーグル、Oculus Goですが、ウェブブラウザが標準で搭載されています。 色々遊べそうなので、Webアプリ開発者目線でわかったことをメモって行きます。 OculusGoの標準ブラウザは、デスクトップからすぐに起動することができ、湾曲したウィンドウとして3D空間内に表示されます。 キャプチャだと随分湾曲してますが、実際見るとそれほどでもありません。(でも湾曲しない平面のモードも欲しい) 基本スペック 基本はAndroid7.1のChrome相当なので、エンジン的にはモダンブラウザとして問題なく扱えると思います。 一方で
0は性別に関する情報が得られない場合に使います。性別に関する情報はあるのだけど1とも2とも言えない場合は9を使います。要は「0でもなくて1でも2でもなければ9」です。 これを知っていればMだとかFだとかを議論をせずに済みますね。 国際規格に従うべき理由 国際規格に従うことは色々と利点があります。まず、どうしてそういうコード体系にしたのかを説明しやすいです。また多言語対応する際も規格通りに書けば伝わるはずなので迷わずに済みます。別システムへのデータの移行や、異なるシステム間でのデータの統合もコード体系が同じならラクラクです。もしかしたら別のプロジェクトで書いたコードをそのまま使いまわせるかもしれません。技術者に対するトレーニングも不要です。 対して、わざわざ国際規格に反する実装をする場合は上記のメリットがそのままひっくり返ってデメリットになりはしますが、もちろん、それなりの理由があれば規格と
PHPDocとは、クラスや関数などのブロックに記述できるDocComment内に記述する書式の通称です。この書式の情報源として時折PSR-5が参照されることがあるので簡単に状況をまとめます。 TL;DR PSR-5の標準化ステータスは昨年10月にABANDONED (放棄・議論停滞)になりました 2018年9月26日にPSR-5とPSR-19が分割され、ともにDRAFT状態に入りました PHPDocを型注釈として利用する各処理系の実装にはばらつきがあり、PSR-5とは相違点があります PhpStormは現在のところ(2018.1 EAP)PSR-5と互換性がありません 特にチーム開発では、対応する型記述の書式について注意が必要です PhpStormに配慮して書く場合、phpDocumentorの仕様を参照する方が安全です PHPDoc リファレンス — phpDocumentor この記事
サーバレスWebアプリケーションを手軽に構築 ※この記事は2017年のServerless Advent Calendarの記事として投稿したものです。そのため、AWS AmplifyとAPI Gatewayの組み合わせでの認証を交えた使い方を説明したものとなっています。 AWS Amplify + AWS AppSyncでの認証を交えた使い方などをお調べの方は、2018年のServerless Advent Calendarの記事として投稿したこちらの記事をご確認ください。 これまでの問題 WebアプリでCognito Identity Pool + Cognito User Poolを使う場合、複数のJSを読み込む必要がある API GatewayのIAM認証をしている場合、SignV4での署名が複雑になる API Gatewayで生成されるSDKを使ってリクエストをする場合、複数のA
Double O というサービスを作りました。 フロントエンドはピュアな Web Components を採用していて、バックエンドは Lambda と DynamoDB のみで構成しました。 (厳密には CloudFront とか API Gateway とかもあるけどそこは省いていいよね?) REST API 以外の Util 系の Lambda 関数はすべて AWS Cloud9 で管理することで環境構築も不要な Lambda ができて楽でした。 TL;DR サーバーレスについてはごく普通のことしかしていないので、詳しくは触れないでおきます。 ピュアな Web Components だけでサービスを成立させることができた。 HTMLElement クラスを継承するだけなのでメジャーライブラリは不要になった。 Web Components の Custom Elements は標準仕様
Facebook が開発したUI ライブラリ 旧来の DOM 操作による状態管理を props や state で抽象化 パーツをコンポーネントごとに管理するのが得意 https://reactjs.org/ から、ライブデモを試せます。 SPAなどの複雑化する React のステート(状態)管理を、ルール(哲学)に従って書かせることで、フロントエンドの動きを追いやすくするためのライブラリ (*個人的解釈です) もともとは Flux と言う、データの流れを一方向に制限することで、流れを追いやすくするという、オブザーバーパターンの亜種から、さらに転じた考え方。 Redux と言う名前は 「Reducer」 + 「Flux」 で 「Redux」だそうです。array.reduce と同じような役割を Reducer が担います。詳しく知りたい方は作者の発表をご覧ください Dan Abramov
iOSDCですごくありがたかったのでDroidKaigi版を準備してみました 情報漏れしてるものがあったらぜひ教えてくださいmm 情報下さった方ありがとうございます! Day 01 WelcomeTalk 10:20 ~ Kotlinアンチパターン https://twitter.com/oxsoft https://www.slideshare.net/RecruitLifestyle/kotlin-87339759 11:20 ~ Inside Android Architecture Components https://twitter.com/moridroid https://speakerdeck.com/kobitokaba/inside-architecture-components How to improve your MVP architecture and test
GraphQLは実装内容に合えばタイタニックの救命ボードのように混沌から救い出してくれる。だからと言って全てのプロジェクトがタイタニックな訳ではないので、使い所が合わなければそんな救命ボードにもあまり意味は無い、という話。 先日、個人開発して公開したプロジェクト「node-node-node」のバックエンドはRails APIにGraphQLを使っていて、このプロジェクト内容に対しては最高の親和性を発揮してくれた。 GraphQLのメリットを一言で言えば「クライアント=サーバー間での複雑なトランザクション処理の全てをGraphQLが吸収してくれる」ということに尽きる。ややこしい技術の詳細を書いたところでメリットはこれ以外に無い。 /usersや/postsというそれぞれのエンドポイントにリクエストを投げていたのがRESTful。 GraphQLにするとエンドポイントを気にすることなく「これ
はじめに 今まで commit message を「なんとなく」書いていたが、プレフィックスをつけることで、コミットメッセージに対する考え方が変わった。 そのおかげで開発効率が上がったので、その内容をシェア。 プレフィックスをつけるってどういうこと? 以下のようにコミットメッセージの先頭に、なんらかの文字をつけること。 feat: xxx という機能を追加 fix: yyy で発生するバグを修正 refactor: zzz の機能をリファクタ のように feat, fix, refactor などがプレフィックスです。 最近 OSS の Contribution Guide などでよく見かけます。 導入したプレフィックスルール Angular.js/DEVELOPERS.md Angular.js の開発者ガイドに書いてあるメッセージを参考にしました。 以前のコミットメッセージ(例 ちなみ
はじめに こんにちは!! では、今からIonicを用いてWebアプリケーションを作成していこうと思います。 時間がないので、サクサクと進めていきますね! もっとじっくり学びたい? そういう方にはオススメの本がありますので、こちらでじっくり学んでくださいね :-p Ionicで作る モバイルアプリ制作入門〈Web/iPhone/Android対応〉 2019年11月27日にIonicの第2版が発売されました🎉!! 本記事はIonic v3の内容に基づいています。 より洗練されたIonic v4に触れたい、学びたい方はこちらでどうぞ! Ionicで作る モバイルアプリ制作入門[Angular版]<Web/iPhone/Android対応> 自己紹介 こざけ (Twitter: @s_kozake) システムアーキテクト Java屋 🍻(´∀`*v) 今から作るもの 「イベントさん」という名
2018-08-06 15:38 Stable版で復活のお知らせ Docker Community Edition 18.06.0-ce-mac70 2018-07-25 にて再度rawフォーマットが利用可能になりました。 Re-enable raw as the the default disk format for users running macOS 10.13.4 and higher. Note this change only takes effect after a “reset to factory defaults” or “remove all data” (from the Whale menu -> Preferences -> Reset). Related to docker/for-mac#2625 Docker for Mac Stable release
はじめに Google I/O 2017の動画を確認し、そろそろPWAについて真面目に把握していかなければと思い至り、GitHubからいくつかサンプルプログラムを探してきて触ってみたので基本的な技術情報と合わせてまとめました。なのでPWA初心者向けです。 特定のJSフレームワークを扱う専門のエンジニアでない限り(私自身がそうなので)、それぞれのJSフレームワークの対応状況なども気になるところだと思いますので、 React.js , Angular , Vue.js の3つにおけるPWAのサンプルについても調べました。 確認した手順などを含めて要点だけまとめていますが、詳細はそれぞれのGitHubページを参照しつつcloneして触ってみて頂ければと思います。 シンプル構成 まずはJSフレームワークなどが入っていないシンプルな構成で、PWAの仕組みについてざっくりまとめました。 PWA ret
いま話題のCPU脆弱性Meltdownですが、 各OSベンダーからカーネルのパッチが配布され始めました。 個人で利用しているEC2にパッチを適用して、ベンチマークをとったところ、 トータルスコアが25%低下という結果が出ましたのでまとめます。 ※環境やCPUの種類やベンチマークの取り方で変わるので、 必ずしも全ての環境においてこの結果が正しいわけではありません。 環境とスペック EC2インスタンスタイプ:t2.midium OS: 3.10.0-693.11.6.el7.x86_64 (CentOS 7) CPU: Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz (2コア) 結論 コンテキストスイッチの速度が低下する。 Meltdown関連の記事にもあるように、 パッチ適用によってカーネルモードとユーザモードのアドレス空間を分離する措置が取られるため、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く