You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
この記事は Python Advent Calendar 2016 24日目の記事です。今回はPythonのデバッグのTipsをいくつか紹介します。 print()でデバッグ print()関数を使って確認したい値をstdoutに出力することでデバッグします。これで解決できるのであれば、それに越したことはありません。 FizzBuzzをデバッグします。今回は1から20までの数値を使ってFizzBuzzを出力したいとします。以下のコードには明らかなバグがあります。わかりますか? example_fizzbuzz_buggy.py:: for ii in range(1, 21): if ii % 3 == 0: print('Fizz') elif ii % 5 == 0: print('Buzz') elif ii % 15 == 0: print('FizzBuzz') else: pr
Djangoでアプリケーションを作るにあたって 前回Djangoで作る自分だけのTwitterクライアントhttp://qiita.com/Gen6/items/11fa5265053da95fcf0b、 をやりましたので今回はSQLiteを使った簡易的なTo-doリストアプリケーションを作成していきたいと思います。色々カスタマイズ余地を残すべく出来る限りシンプルな構成としてみました。To-doリストから自分へTwitterでリプライを送るなどの改造余地もあるかと。 今回はDjangoのFormを活用して作っていきます。 これが理解できるようになると簡易的な顧客管理システムや、掲示板、SNSっぽいアプリケーションなどできる幅がぐっと広がるような気はします。 Djangoってそもそもどうやってはじめるのかは以下の記事を御覧ください。 http://qiita.com/Gen6/items/1
Instagram currently features the world’s largest deployment of the Django web framework, which is written entirely in Python. We initially chose to use Python because of its reputation for simplicity and practicality, which aligns well with our philosophy of “do the simple thing first.” But simplicity can come with a tradeoff: efficiency. Instagram has doubled in size over the last two years and r
コードレビューで土日に安寧を ソーシャルゲームは、ユーザアクセス集中と、それに伴うユーザデータ増加によって劇的に負荷が上がり、(主に土日に)サービスに影響を与えがちです。 問題があるコードは、たとえ負荷テストを行っても、作成したシナリオによっては見つけられない可能性もあります。 そういった見えない不安を払拭するという意味でも、コードレビューは重要だと思っています。 【ステキポイント】 ・ ソースを見ることにより、時限爆弾が土日に爆発するのを解除 ・ スキル共有によってメンバーがレベルアップすることにより、土日に爆発する時限爆弾の設置確率低下 まぁまとめると これに尽きます(4歳の息子談) 今は、gitのプルリクエストという強力なレビューツールもあり、敷居がかなり低くなったのでオススメです! チェックするポイントは5つ コードレビューを行うにあたり、「どんなところをチェックすればいいのか分か
# -*- coding: utf-8 -*- from __future__ import absolute_import, unicode_literals # テストする関数 def add(a, b): return a + b # テストコード 関数名はtest_ から始めるのがpytestでのお作法 def test_add(): assert add(1, 1) == 2 assert add(1, 2) != 2 >>> $ py.test ../tests/test_add.py =============================================================================== test session starts ================================================
Djangoでテストを書いて、テストレポート・カバレッジレポートを出力し、Jenkinsにテスト結果を出力するまでのメモ 以下の記事を参考にさせてもらいました。 Django でのテスト 前提 BitbacketとJenkinsを連携済み。 ローカル環境からBitbacketへpushすると、自動でJenkinsのビルドが走り、テストが実行されるようになっている状態。 これらの環境構築については以下のブログを参照のこと。 Bitbucketのprivate repositoryとJenkinsの連携について Djangoでのテスト環境の構築 モジュールのインストール pipでdjango-noseとcoverageをインストール。 以前、unittest-xml-reportingを使って同じような環境を作ったことがあったけど、django-noseの方が色々すんなりいった気がする。 #
休日。何かしなければという焦りがあるんだけど、何をしようか思いつかない。 現在の飯のタネである(僕はいわゆるSIer)システム系の勉強を、最近してないことに気づいてはいるんだけど、インフラの構築に気が行ってしまって、なかなかスタートを切れない(どうせなら借りているVPSに対して色々と自動化して・・・と)。 そこでインフラの部分に気を取られることは無いHerokuを使って、何か作ってみることにした。 >> できあがったもの >> http://studysuggest.herokuapp.com ※後ろの方にも書いてますが、綺麗に何かを作るより、まず動くものを作って公開するというのを主題にしてます。 Herokuとは ざっくりとまとめると 高負荷でなければ無料で利用できる 定期的にバックグラウンドで◯◯動かす みたいな事やると、無料枠超える可能性出てくるので注意 gitにソースを上げて、流し
どうも、ご無沙汰してます有末です。 Pythonistaならpyenvだよねーってことで当初からバリバリ使わせていただいているのですが、最近djangoのプロジェクトを書く際に困ったのでまとめておきます。 具体的にはpyenvでPytho 3をインストールし、pyenv-virtualenvを用いて仮想環境を構築し、その仮想環境に django をインストールしただけでは jedi-vim の補完が効かないという問題です。 いくつかの要因が複合して複雑に成っていたので、ひとつずつメモしていきます。 忙しい人のための簡易書 普段からpyenvとpyenv-virtualenvを使用していてjedi-vimでdjangoの補完が効かなくて困っている。 とにかく補完を効かせたい。 戯言なんてどうでもいいという人は下記を~/.vimrcに記載してください。 " ~/.pyenv/shimsを$PA
Djangoアプリケーションを開発する際のデバッグ方法について紹介します。 標準のDebugモード以外に使える様々なサードパーティライブラリを中心に、 私が趣味/仕事でのDjangoアプリケーションを開発する通して学んだデバッグ方法を具体的に紹介します。 アプリケーション開発時の泥沼のデバッグ作業は誰しも避けたいものです。 その時間はたいてい無駄になりますし、開発者自身つらいものがありますね。 優秀なツール使い、その負担を軽減しましょう。 適切なロギングで、発生した問題に素早く対処できるようにしましょう。 このセッションでは少しでも開発の助けになるよう、 Djangoアプリケーションのデバッグ方法を紹介します。Read less
1月に「Pythonを始めるなら、1ファイルの軽量Webフレームワーク「Bottle」がおすすめ」というのを書いたところ、なかなか反響が大きかった。そこで今回は、私がいくらか使ったことがあるPythonのWebフレームワーク6種について、かんたんに紹介するというのをやってみたい。コメントは、私のごく主観的な印象に基づいている。 Bottle(ボトル) http://bottlepy.org/ 「bottle.py」という1ファイルだけでできている。環境構築が不要なので、Python入門に最適。1ファイルに全部入っているので、組み込むのも容易だし、依存リスクもないので、実用にもいいと思う。これだけシンプルなのは、生存戦略としても強い。 CherryPy(チェリーパイ) http://cherrypy.org/ Bottleより大きいが、外部依存がないので、これも環境構築不要で、Python入
Nettuts+ 2012.11.26のブログエントリ Chatting with Obama For America’s Director of Frontend Development: Daniel Ryan | Nettuts+ 2012年大統領選挙のObama陣営のネット戦略を担うエンジニア・デザイナーチームの中人へチャットでインタビュー 使ったツールから、教訓とか色々書いてる jekyll,cssプリプロセッサ、github、高速化ツール、ec2,s3,rails,django,magengo モバイルはトラフィック多い(全体の1/4)けど献金はほぼゼロ、とか 前回(2008年)の選挙のときは肝心なときにシステム障害を起こした件 それを踏まえて今回はどうやったか Romney陣営は敵陣営の失敗から学ばなかった(肝心なときに同じ障害を味わった) 知らなかったこととか書いてて勉強に
Django REST framework 2 What it is, and why you should care. Most people just make the mistake that it should be simple to design simple things. In reality, the effort required to design something is inversely proportional to the simplicity of the result. — Roy Fielding Announcement: REST framework 2 released - Tue 30th Oct 2012 REST framework 2 is an almost complete reworking of the original fra
WSGIからの流れを大まかに掴めたのでまとめたい。 かなり大まかには、この画像を念頭におけばいいと思う。 今回はDjango1.4を対象にしている。 注意 流れを理解するために読むべきソースコードへのリンクと、その順番をまとめてる。 読みやすさはあんまり考慮してないし、細かな解説はしてない。 ソースコードの読むべき順番をメモっておきたいだけ。 DjangoのView まず簡単に触れておきたいのがDjangoのView。 Viewとは リクエストを受け取る レスポンスを返す 呼び出し可能である オブジェクトのことで、このViewがリクエスト->レスポンスの末端となっている。 冒頭の図がわかりやすいと思う。 あとはチュートリアル。 はじめてのビュー作成 クラスベースビューの場合、流れが複雑になるからそれはそれで別の機会にまとめたい。 https://github.com/django/djan
Introduce Yocto Project Japan and What want to make using Yocto ProjectHiroshi Sakate
Django で Ruby on Rails の scaffold 的なことをする『django-generate-scaffold』を使ってみる。 (Python==2.7, Django==1.4, django-generate-scaffold==0.0.3a1) Install: django-generate-scaffold $ pip install django-generate-scaffold startproject $ django-admin.py startproject ownsomeblog $ cd ownsomeblog/ $ python manage.py startapp blogs $ ls blogs/ manage.py ownsomeblog/ settings.py ownsomeblog/settings.py SQLite3 設定。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く