タグ

ブックマーク / qiita.com (451)

  • Webパフォーマンス虎の巻

    Webパフォーマンス向上施策のために、今更ながら超速1を読んだので、今までの自分の知見と合わせてまとめてみます。 なるべく柔らかく、改善施策ってまず何をどうすればいいの?という疑問を持った人に向けて書いています。 ▪️格言 そもそもWebは速い。遅くしているのは我々です。大抵は技術の問題ではなくて、人の問題。 引用元: テクニックではなく、今、気で取り組むべきWebパフォーマンス (html5jパフォーマンス部 部長 竹洞さん) 心得 パフォーマンス向上に対する施策は大別すると以下の2通り 軽量化 (単純にやりとりするデータ容量を小さくすること) 圧縮 削除 最適化 (その時に最も適している実装・実行をとること) 経路・順番の変更 非同期 もっとも遅くしている原因を探して、それを対策するのが原則。「対効果」が絶対的正義である。手段から入るのは愚策。まず先に原因を知ることが重要。 ▪️1

    Webパフォーマンス虎の巻
  • 2018年の最先端バックエンドエンジニアになろう - Qiita

    フロントエンドエンジニア / バックエンドエンジニア / DevOpsエンジニア@poly_soft 先日2018年の最先端フロントエンドエンジニアになろうという記事を訳したのですが、そのリポジトリにはバックエンドとDevOpsのロードマップ画像も置いてあります。 しかしバックエンドのテキストにはTODOの1行だけで、動きがありませんでした。 解説が追加されないかなー、と思ってたら別の人がやってたのを見付けました。 ということで以下はModern Backend Developer in 2018の日語訳です。 Modern Backend Developer in 2018 こんにちのWeb開発の様相は、数年前とは全く別物です。 Web開発には多すぎる選択肢があって何をすればいいのか迷います。 それが、これらのステップを視覚的に表し、段階的にWeb開発を行っていくためのガイドラインを作

    2018年の最先端バックエンドエンジニアになろう - Qiita
  • Next.js を Firebase hosting で動かしてSSRする - Qiita

    いわゆるサーバーレス。 TL;DR すべてのリクエストを Firebase Functions に流して next.jsわせた結果を返すとSSRになる。最高。 概要 Firebase Hosting は index.html を上げたら動いてくれる静的サイトホスティングだと思っていたが、 全てのルーティングを Firebase functions に全て受けさせる。こともできた GCP知らない人向けに 一応解説しておくと Firebase Function = Google Cloud Function ≒ AWS Lambda そんでもって、React で SSR したいとき、スクラッチでもいいけど、一番簡単なのは next.jsnext.js 公式にも exmaples があり、読んでみたら勉強になったので解説してみる。 Firebase Hosting の設定 { "func

    Next.js を Firebase hosting で動かしてSSRする - Qiita
  • UIButtonでヒラギノフォントが切れる対策(追記あり) - Qiita

    追記 簡単な方法がありました。 現象 UIButtonでヒラギノフォントを使用したとき 英字の g j などが画像のように切れてしまう問題があります。 これはヒラギノのサイズが正確に取得できておらず、viewのframeが小さく設定されていることが問題です。 UIButtonのtitleLabelは自動で sizeToFitされてしまうため、frameの変更を行っても適応されないようです。 解決 ちょっとしたハックですが以下のようにします。 let buttonText = "abcdefghijklmnopqrstuvwxyz" let attributes = [ NSBaselineOffsetAttributeName: NSNumber(float:1.0) // buttonの文字をベースラインからgの下が入るように上にずらす ] let attrText = NSAttrib

    UIButtonでヒラギノフォントが切れる対策(追記あり) - Qiita
  • 俺が考えた最強の Reactのステートレスコンポーネントの書き方 - Qiita

    最近自分はこう書いてるという例。意見が欲しい。 この記事に redux は出てこない。 参考: https://qiita.com/mizchi/items/bcb1aef8d1f14f8d0b4a 構成要素 React flow styled-components recompose 以下 SFC = Stateless Functional Component /* @flow */ import React from "react" import styled from "styled-components" import pure from "recompose/pure" type Props = {| value: string |} export default pure(function Example(props: Props) { const { value } = p

    俺が考えた最強の Reactのステートレスコンポーネントの書き方 - Qiita
  • iOSDC 2018 セッション資料まとめ - Qiita

    iOSエンジニアのお祭り、iOSDC Japan 2018 およびその非公式関連イベントの登壇資料まとめです。 Twitterで捕捉次第掲載しますが、もし資料を見かけた方or資料を公開した登壇者の方がいらっしゃいましたら、コメント等でお声がけください。 なお、各日トラック別レギュラートーク→トラック別LT、の順に並んでいます。 全セッションタイトルが見出しで掲載されており、資料等が添付されている場合はタイトルの前に📎がついています。 📅 0日目(前夜祭) 2018/8/30 at Waseda University 🚪Track A 📎ARKitのための3D算数 https://speakerdeck.com/fujikawakei/arkitfalsetamefalse3dsuan-shu https://github.com/kboy-silvergym/3DMath-For-

    iOSDC 2018 セッション資料まとめ - Qiita
  • [iOS][Swift] サイドメニューの実装 - Qiita

    Sidemenu、Sidebar、Slide menu、Hamburger menu、Left menuなどいろいろ言い回しがあるけど、真剣に実装するとこれが意外とめんどくさい。 スワイプで指に追随するように表示/非表示する フリックでも表示/非表示する スクリーンエッジからPanしても表示する ナビゲーションバーのボタンをタップしても表示する メニュー選択時にも非表示にする メニュー以外の半透明の薄暗い部分をタップした時も非表示にする などなどの要求仕様を満たすとGestureRecognizer周りの実装やView構造どうしたらいいんだっけとか考えるのが割と手間。 しかし、サイドメニューごときに外部ライブラリ依存したくない! ということで、いつでも自前実装可能なようにサンプルコードにして上げておいた。 https://github.com/atsushijike/Sidemenu 環境

    [iOS][Swift] サイドメニューの実装 - Qiita
  • XibファイルでTableViewを実装する - Qiita

    TableViewを実装する際に画一的な見た目のセルではなく、一つ一つのセルをカスタマイズしたい時があるかと思います。 僕の場合は、個人アプリのホーム画面にXibファイルで作成したTableViewを採用していますが、結構色んなことができて非常に便利でした。 今後、他のアプリでも活用する機会が増えると思ったので、今回はこれについて書いていきたいと思います。 できたもの カスタムセルを使い、異なるデザイン(とは言えLabelとHeightが異なるだけ)のセルをtableView上に描画しています。 このソースはGithubでも公開しているので、ぜひこちらも見てみて下さい。 Viewを追加 HeaderViewとTableViewをそれぞれStoryBoardに追加します。 Xibファイル追加 次にTableViewに表示したいCellの数だけXibファイルを追加していきます。 僕の場合はXi

    XibファイルでTableViewを実装する - Qiita
  • Cloud functions for Firebase メモ - Qiita

    Cloud functions for Firebaseとは Cloud functions for FirebaseはFirebaseの機能やHTTPS要求によってトリガされたイベントに応答して、自動的に用意したバックエンドコードを実行することができます。これらのバックエンドコードはGoogleのクラウドに保存され管理&自動実行されるので、自分でサーバー管理及び拡張する必要はありません。 現在サポートしているFirebaseの機能 Realtime Database Triggers Writes to Realtime Database Firebase Authentication Triggers New user authentication Google Analytics for Firebase Triggers Analytics conversion events Cl

    Cloud functions for Firebase メモ - Qiita
  • そのまま使える!iOSアプリを作るためのswiftサンプル集 - Qiita

    更新情報 2018/7/1:基サンプルにAVSpeechSynthesizerSample、HomeScreenQuickActionsSample、PeekAndPopSampleを追加。 2019/9/23:全サンプルをXCode10.3、Swift5に対応 はじめに カスタムセルを使ったCollectionViewの表示、手を止めずに作れますか? TableViewCellを伸び縮みさせたり、視覚効果を与えたりする、、、何も調べずに作れますか?? おそらく開発業務に携わっているほとんどの方は(僕を含めて)新規に何かを作成する場合にネットで該当するサンプルコードを探していると思います。 そしてサンプルを探すことに時間がかかり、「調べる時間 > 作る時間」の状態になっているのではないでしょうか。 ならば「あるある」な画面や機能のサンプル一式を実行確認できる状態にして全体共有しておけば開

    そのまま使える!iOSアプリを作るためのswiftサンプル集 - Qiita
  • 【随時更新】2018年にReact Nativeを始める人におすすめ26選 - Qiita

    ちょうど1年くらいにReact Nativeでちょっとしたアプリを作っていたのですが、最近はめっきり離れてしまっていました。Reactもv16になり、少し開発環境も変化しているかなと思っていたら・・・結構変わっていました。 React Native Showcaseを見ると、FacebookやInstagramはもとよりAirbnb, Skype, Tesla, Walmart, Wix, UberEATSなど日でも有名な企業やサービスの採用が目立っています。 showcase 今回は良く使いそうなツール・コンポーネント・サービスを集めてみました。 随時更新もしていきたいと思います! 1. Expo https://expo.io/ ExpoはReact Nativeの開発をサポートするツールです。 主に以下を提供してくれています。 Expo XDE、Expo exp Expo Modu

    【随時更新】2018年にReact Nativeを始める人におすすめ26選 - Qiita
  • 「Vue.js + Go言語 + Firebase 」で始める! Frontend & Backend API 両方で認証するセキュアなSPA開発ハンズオン! - Qiita

    Vue.js + Go言語 + Firebase 」で始める! Frontend & Backend API 両方で認証するセキュアなSPA開発ハンズオン!JavaScriptGoVue.jsFirebaseGoogleCloud こんにちは。僕です。最近は Vue.js で SPA、Go言語で APIサーバーを実装しています。ここで意識するのはフロントエンドとバックエンドの分離です。分離させたい理由は二つ。 アプリ化の際や、今後、他のサービスと連携させるためにも、バックエンドはAPIサーバーに徹したい。 Vue.jsで開発中にオートリロードしたい(Vue.jsをビルドして出来たファイルをGo言語でserveする形にすると、毎回ビルドするのが面倒) しかし、これをやろうとすると認証どうするの問題が付いてきます。APIサーバ、フロントの両方をセキュアにしようとするとそれだけで時間取られます

    「Vue.js + Go言語 + Firebase 」で始める! Frontend & Backend API 両方で認証するセキュアなSPA開発ハンズオン! - Qiita
  • styled-componentsを使った雑なReact Presentational Componentの書き方 - Qiita

    最近、仕事Reactを書く機会が多くなってきて色々試しているうちに書き方が落ち着いてきました。 [注意] 来はクラス毎にStyledComponentsのインスタンスを作った方がいいです。自分がVueライクな感じで雑に書くための記法です。 この表記ですと、子コンポーネントに同じクラス名があたったときに、親コンポーネントのスタイルが当たるので完全なscopedなスタイルにはなりません。 (@nabeliwoさんにコメントいただきました。ありがとうございます!) 既にHTMLが存在しているときに雑にReactに移植するときの途中段階とかで役立つ書き方です import React from 'react' import styled from 'styled-components' const TodoItem = ({ className, title, description, onD

    styled-componentsを使った雑なReact Presentational Componentの書き方 - Qiita
  • styled-componentsを使ったCSS設計 - Qiita

    はじめに 自分は普段フロントエンドエンジニアとして、React Reduxなアーキテクチャのアプリを作ることが多いのですが、stylingにstyled-componentsを導入しています。今回は、styled-componentsでのCSS設計について書いてみたいと思います。 styled-componentsとは JSでstyleを記述するCSS in JSのライブラリで、2019年8月現在最も人気のあるライブラリです。タグ付きテンプレートリテラルをうまく使った独自性と、明快なAPICSS in JSの火付け役にもなり、同じ思想を持った亜種ライブラリ(paypal/glamorous, zeit/styled-jsx等)が続々と出て来るなどある種のブームを巻き起こしました。 そもそも、Reactの登場でフロントエンド開発が「jQueryによるhtmlへの振る舞いの後付け」というスク

    styled-componentsを使ったCSS設計 - Qiita
  • これからのReactコンポーネントのスタイリングはstyled-componentsが良さそう - Qiita

    前々回のprettierと前回のflowに引き続きReact Confで紹介されてたものを使うシリーズ第3弾です。 styled-componentsはSassやRadium、CSS Moduleといったスタイル系ライブラリの問題を解決するために生まれた新しいライブラリで、今Reactコンポーネントのスタイリングをするならベストの選択肢なんじゃないかと思います。 追記 2017/4/2 - jestでのテストについて追記しました。 2017/5/26 - v2について簡単に記載しました。 styled-componentsとは styled-components 所謂CSS in JSの一種でjsx内に普通にcssが書ける。 キャメルケースとかせずにcssが書けるので、(複雑なことをしない限りは)移行が楽。 props渡したりテーマ作ったり、extendできたり機能豊富。 擬似要素やmed

    これからのReactコンポーネントのスタイリングはstyled-componentsが良さそう - Qiita
  • prettierの使い方 - Qiita

    ということで、JavaScriptのフォーマッタのprettierの紹介です。 React Confで紹介されてたものを色々試してみようと思って、まずはprettierを試してみました。 追記 2017/4/14: Prettier1.0(とMinor fixあてた1.1.0)が出ました。記事の内容は1.0でもそのまま問題なく適用できました。 2019/7/7: prettier-eslintよりもeslint-plugin-prettierを使ったほうが良さそうです prettierとは JavaScriptのコードを整形してくれるフォーマッタ。他言語で言うとGolanggofmtみたいなもの。 他のフォーマッタと比べて設定項目が少ないので開発者間で迷いなく共通のスタイルで統一される。 まだベータ。 1月にリリースされてから2ヶ月ちょっとでスター数6000超え。例えばeslintは3

    prettierの使い方 - Qiita
  • 日本一マクドナルドから遠い場所 - Qiita

    きっかけ 日マクドナルド様のサイトの店舗検索の地図をみてたら、やたらたくさんの店舗が一度に表示できる。 これって全店舗一度に読み込んでるのかな、とChromeのデベロッパーツールで覗いてみると、全店舗分のJSONが見えた。 全店舗2887件。 ちょっと拝借して長年の疑問を晴らしてみようと思った。『はたして、日で一番マクドナルドから遠い場所はどこなのか?』 注) 離島は除きます。離島を含めると南鳥島がぶっちぎりです。 Fusion Tablesでプロットしてみる Fusion Tablesに緯度経度をインポートすることでマップに位置をプロットできるのでやってみた。 Fusion Tablesの導入その他に関しては他に説明を譲ります。 とりあえずデベロッパーツールからJSONを丸ごとコピペして編集の末にCSVファイルをでっちあげた。 Fusion Tablesで扱えるように、先頭行にはカラ

    日本一マクドナルドから遠い場所 - Qiita
  • iOSカスタムキーボードの作り方 - Qiita

    導入 iOS8 からカスタムキーボードが解禁となりましたが、その開発方法を網羅的にまとめてある場所がありません。記事では iOS カスタムキーボード開発に関するあらゆる知見をここに集約していきたいと思っています。 iOS カスタムキーボードの基 カスタムキーボードのプロジェクト立ち上げ キーのレイアウト方法 キーを押して文字を挿入する方法 キーを押して文字を削除する方法 カーソルの位置を動かす方法 キーを押した時に音を鳴らす方法 画面の向きに応じてレイアウトを変更する方法 フルアクセスのオンオフをチェックする方法 設定アプリを作る方法 収容アプリ名とキーボード名の付け方 ノッチあり iPhone に対応させる方法 スペルミスチェックや補完をする方法 日本語入力をする方法 左右端のキーの反応速度を正常にする方法 下端をスワイプしてもコントロールセンターを出現させない方法 実装不可能だと思

    iOSカスタムキーボードの作り方 - Qiita
  • Swiftとイニシャライザ - Qiita

    はじめに Swiftの型(クラス、構造体、列挙体)とイニシャライザの関係を整理します。 以下のキーワードがモヤっとしている方におすすめです。 Failable Initilizer|失敗可能イニシャライザ Default Initializer|既定イニシャライザ Memberwise Initilaizer|全項目イニシャライザ Designated Initializer|指定イニシャライザ Convenience Initializer|簡易イニシャライザ Required Initializer|必須イニシャライザ イニシャライザとは 型(クラス、構造体、列挙体)のインスタンスを初期化(initialize)する特殊なメソッドのこと Apple公式リファレンス|Initialization イニシャライザの記法 通常のメソッドの記法に近いですが、イニシャライザは特殊なメソッドのため

    Swiftとイニシャライザ - Qiita
  • [Swift] UITextFieldがキーボードに隠れないようにするやり方 - Qiita

    [2017.02.09 Swift3.0に対応] ・ラベルの追加参考サイト ・println を printに変更 などなど Xcodeのstoryboardを使用しないやり方です。 storyboardを使用して開発する方は、参考サイトが役立ちます。 はじめに アプリ内でUITextFieldをタップすると下からニョキッとキーボードが出て来ます。 この時、UITextFieldがキーボードに隠れてしまい、 自分が何を入力しているのかが確認できなくなってしまうため、その解決方法を載せます。 ソースコードだけ見たい方は、一番下に完成コードを載せているので、そちらをどうぞ。 解決方法 UIScrollViewを使用します。 TextFieldの下辺とキーボードの上辺が重なったら、ScrollViewで指定した長さずらしてあげます。 そうすれば、TextFeildはキーボードに隠れません。 実装

    [Swift] UITextFieldがキーボードに隠れないようにするやり方 - Qiita