Stay organized with collections Save and categorize content based on your preferences. Explore our growing collection of courses on key web design and development subjects. An industry expert has written each course, helped by members of the Chrome team. Follow the modules sequentially, or dip into the topics you most want to learn about.
In my last post I gave a little overview of sweet.js the hygienic macro system I built over the summer. Today I want to write a little bit about what makes sweet.js possible and why we haven’t really seen a macro system for JavaScript before now. I gave hints at some of this in my intern talk but now we can finally do a deep dive! Basics First, let’s take a look at compilers 101: The traditional w
skip over comments if tok is / if tok-1 is () if tok-2 in "if" "while" "for" "with" tok is start of regex literal else tok is divide else if tok-1 is {} if isBlock(tok-1) // named or anonymous function if tok-2 is () and tok-3 is "function" or tok-4 is "function" if function expression // how to determine is described below tok is divide else tok is start of regex literal else tok is start of rege
クラッシュログ解析サービスの crittercism と bugsense を使ってみたのでその比較。 今まで Android/iOS アプリのクラッシュログ解析は、自前でやっていました。具体的には plcrashreporter を組み込んで、自前の Web サーバにクラッシュログ送って、ファイル保存しておくという方法だったのですが、ログを分類したり、シンボルを復元したりが超面倒なので正直あまり活用できていませんでした。 クラッシュログ解析サービスはいくつかありますが、比較的安価に使えそうな crittercism と bugsense を試用しています。 どちらも、クラッシュが発生したログを取得してサーバに送り、スタックトレースなどの情報をブラウザで閲覧することができます。 実際使ってみると超便利です。もうこの手のサービスなしでは生きていけません。 大量にログがでたら見るのが大変じゃな
AVFoundationでカメラアプリを作るほうが、UIImagePickerControllerを使うより拡張性が高いということで、さくっと表示させるサンプルを用意しました。 準備 プロジェクトに以下を追加。 * AVFoundation.framework * CoreVideo.framework * CoreMedia.framework * QuartzCore.framework * MobileCoreService.framework 画像のキャプチャ まず以下をヘッダファイルに追記。 ただし、別にここに書かなくとも良いけども。 #import <UIKit/UIKit.h> #import <AVFoundation/AVFoundation.h> @interface ViewController : UIViewController<AVCaptureVideoDat
Objective-C Advent calendar 22日目。 NSArrayなんかにmapやfilterといったメソッドをカテゴリで生やして、それぞれのメソッドを繋ぎあわせて処理をしたいといった時(そんな時があるのか甚だ疑問ではありますが)、通常のメソッド呼び出しだとこんな実装になると思います。 @interface NSArray (functional) - (NSArray*)filter:(BOOL(^)(id))block; - (NSArray*)map:(id(^)(id))block; @end @implementation NSArray (functional) - (NSArray*)filter:(BOOL(^)(id))block { NSMutableArray *arr = [NSMutableArray array]; for(id obj in s
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く