タグ

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

  • JavaScriptの { } を理解する - Qiita

    結果はどうなったでしょうか。 自分が今使っているGoogle Chromeだとこうなりました。 結果は{a: 10}というオブジェクトです。まあ、これは当然ですね。3 + 5と入力すれば実行されて8が返ってくるのですから、{a: 10}というオブジェクトリテラルを書けば{a: 10}というオブジェクトが作られるのは当然です。 ……。 ここで、一部の人は「おいふざけんなよ」と思っているかもしれません。というのも、この例は環境によっては違う結果になるのです。具体的には、Chrome以外2のブラウザのREPL(FirefoxやEdgeなど)が該当します。あと、ts-nodeのREPLも該当するらしいです。これらの環境では、結果は{a: 10}ではなく次のようになります。 オブジェクトを作ったはずなのに結果が10とか意味不明ですね。そもそも、こんな簡単なプログラムで結果が全然違うとか、JavaSc

    JavaScriptの { } を理解する - Qiita
    zyzy
    zyzy 2018/11/16
    REPLは便利だけどあくまでツールだから、言語と違って仕様がかっちり制定されているわけではない、ってのは確かになぁ……。
  • 全ての開発者が学ぶべき1つの言語 - Qiita

    「どの言語を学ぶべきか」という議論が都内各所で流行しているようなので、FPGA論理合成の間に暇だったので私も書いてみることにしました。 全ての開発者が学ぶべき1つの言語 1.D言語 D言語はサーバーサイドのアプリケーション開発をリードできる言語です。 モバイルゲームAndroidアプリの開発、そしてエンタープライズWebアプリケーションの開発まで、非常に大きなマーケットに大胆かつ冒険的な野心的大挑戦が行えます。 頑強でスケーラブルなサーバーサイドアプリケーションを開発したいなら、あなたはD言語を学ぶべきです。どのように複雑なシステムであってもD言語で書けますし、様々なツールやテクノロジー、そしてコミュニティのサポートを得ることができないこともないこともないかもしれません。少なくともソースコードは公開されています。 なぜD言語を学ぶ必要があるのでしょうか?D言語を使うことで、システムレベル

    全ての開発者が学ぶべき1つの言語 - Qiita
    zyzy
    zyzy 2018/11/09
    ףּDﯢ ףּDﯢ ףּDﯢ 「せやな(洗脳された目)」ףּDﯢ ףּDﯢ ףּDﯢ
  • 今後必要になるプログラム言語

    今後必要になるマスター言語 JAVA RUBY C++ PL/SQL JAVA JAVAアプレット JAVAサーブレット JAVAscript この3つのうちJAVAServletおよびJavaScriptは必須。 条件としてJavaBeansについて的確な知識があり、自分で設計取り回しができるレベル。 JavaBeansの設計とは、JAVA言語特有の空間的なソースやデータの配置を把握してることが条件なので、システムエンジニアへの質問もしくは仕様理解に努めること。 国内外問わずシステムのシェアはWINDOWS主体でありほぼJAVAで統一されている。 さらに動的HTMLなどについてもJAVAサーブレットの知識が流用される。 JavaScriptの知識については特に必要ないがBeansその他に直結するケースが多いので仕様確認。 RUBY この言語についてはJAVAのサブルーチンとしての位置づけ

    今後必要になるプログラム言語
    zyzy
    zyzy 2018/11/07
    これはまぁ流石にネタかと。
  • Chromeを使うなら、必ずServiceWorkersを無効化しよう - Qiita

    2022/01/17追記:この方法では無効化できません。【Chrome】ServiceWorkerを今度こそ決定的かつ完全に消去するを参照してください。 ServiceWorkersというAPIが存在します。 ブラウザをフルスクリーン表示したり、デスクトップにアイコンを作成したり、PUSH通知を行ったり、バックグラウンドでJavaScriptを動作させたりといった機能を提供します。1 見てのとおりユーザには何一つ利のない機能なので、必ず無効化しましょう。 なに、動かなくなるサイトがあって困る? 大丈夫。 ServiceWorkersがないと動かないサイトは、存在そのものが不要なサイトです。 手順 PCChrome 無効化 URLにchrome://flags/と入力すると、全面英語の設定画面のようなものが出てきます。 最上部の検索欄に「Worker」および「PWA」「Progressiv

    Chromeを使うなら、必ずServiceWorkersを無効化しよう - Qiita
    zyzy
    zyzy 2018/11/06
    まぁ昔はjs自体を切ってた人も居たし、別に良いんじゃないか?
  • TypeScriptの型初級 - Qiita

    この記事は「TypeScriptの型入門」の続編です。入門の続編ということなので初級というタイトルにしてみました。TypeScriptの型よくわからんという方は先に入門から読むことをおすすめします。入門レベルのTypeScriptくらい分かるよという方は読まなくても大丈夫です。 TypeScriptの型入門 さて、前回の記事ではTypeScriptの型を一通り紹介しました。この記事ではその続編として、実用上必要になるTypeScriptの型の挙動を理解したり、標準ライブラリに存在する型の使い方を理解することを目標にします。前回に引き続き、あくまでTypeScriptの型に関する話ですから、JavaScriptの言語機能とか、TypeScriptの構文とかの話はしません。悪しからずご了承ください。 最終更新: 2019-03-16 (TypeScript 3.4に対応しました) union型

    TypeScriptの型初級 - Qiita
    zyzy
    zyzy 2018/11/02
    入門編に続いて分かりやすい。後付けなせいかちょっと非直感的な挙動もするんだな。
  • Graal VMのnative-imageでscalac-nativeをビルドする - Qiita

    的にはこちらのページの手順を再現するだけで良いので簡単でした。 環境: - Mac OS Sierra - JDK 1.8.0_171 - Scala 2.12.6(brewでインストール) Graal VMをダウンロードして適当に展開する https://www.graalvm.org/downloads/ バイナリはLinux 64bit版とMac OS 64bit版しかないので注意 ~/graalvm-ce-1.0.0-rc5 に展開したことにする 環境変数JAVA_HOMEを設定する(Java 8でないと動かない?(要確認)ので注意) $ export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

    Graal VMのnative-imageでscalac-nativeをビルドする - Qiita
    zyzy
    zyzy 2018/10/29
    Dottyになればリフレクション頼りの部分も減って、より使える範囲は広がるかもしれないし、案外今後使えるかもなぁ。
  • Pythonでこんなことできちゃうんです*随時更新*

    はじめに 日々、StackOverflow や Qiita や Medium らで pythonについてググっている私がこれ使えるな、面白いなと思った tips や tricks, ハックを載せていくよ。 簡単な例文だけ載せてくスタイル。新しいの発見次第、じゃんじゃん頻繁に追加していくよ。 これも知っとけ!これ間違ってる!ってのがあったら、コメント下さい。 このモジュルやライブラリーの関数とか基/応用的な使い方を知りたいけど、自分で探すの面倒、英語意味不ってのがありましたらそれもコメントにどうぞ。私が代わりに調査 • 解析を努力致します。 簡単な例文を心がけてはいますが、なにせ読むな!見て感じろ!なくらい説明不十分なので、初歩的な関数の使い方などのpython知識を所有しているとすんなり理解しやすいかと思います。多分。 注:リンク先は全て英語です。PEP8をいつかは読みましょう。良いスタ

    Pythonでこんなことできちゃうんです*随時更新*
    zyzy
    zyzy 2018/10/27
    printが関数である事が基本事項になっている時代に安堵する
  • TypeScriptの型入門 - Qiita

    TypeScriptは型がついたJavaScriptです。プログラミングにおいて型があることの恩恵は大きく、近頃AltJSの代表格として人気を集めています。TypeScriptはもともと型のないJavaScriptで書かれるコードに型を付けることを使命としていることもあり、たまに変な型が追加されます。例えばTypeScript2.8で追加されたconditional typesはずいぶん注目を集めました。これによってTypeScriptの型システムの表現力が広がりましたが、一方でTypeScriptを書いている人の中には、よく分からない型が増えてついて行けない、一部の人たちが長くてよく分からない型定義を書いて喜んでいるだけと思っている方もいるのではないでしょうか。実際、健全にJavaScriptを書いていれば、自分でそのような変な型を書くことはあまり多くありません。 そこで、この記事ではT

    TypeScriptの型入門 - Qiita
    zyzy
    zyzy 2018/10/26
    いきなりリテラル型とか出てきてわくわく/色々揃ってるけど、ベースがjavascriptなせいで、パターンマッチが貧弱なのが玉に瑕、って感じか/keyofはforallでmappedは存在型でconditional が遅延評価される値コンストラクタかな?
  • お前らはまだ、侍エンジニア塾の凄さを知らない - Qiita

    エンジニア塾の圧倒的SEO力 侍エンジニア塾とは 侍エンジニア塾って知ってますか?プログラマならみなさん何かしらぐぐったときに、ほぼトップに表示されるあのサイトです。つい先日、侍エンジニア塾がとても炎上していましたね。みなさんやっぱりあのサイトにとても怒りをもっているそうです。ほぼトップに表示されるわりには、中身がほとんどない、会員専用みたいなページも表示してきたり、エンジニアにはかなり嫌われています。 しかし、僕らはあのサイトから見習わなければならないことがあります。あの史上最悪の独裁者ヒトラーであっても、見習うべき部分があることと同じく。それは、「SEO」です。侍エンジニア塾のすごいところは、この圧倒的SEO力です。では、なぜ、侍エンジニア塾はそこまで検索の上位に出てくるのか思いました。 でも、プログラミング系ワードで検索した際に、もう一つSEOに強いサイトがあります。それは、ご存知

    お前らはまだ、侍エンジニア塾の凄さを知らない - Qiita
    zyzy
    zyzy 2018/10/23
    SEOとしては正攻法なんだよね。古くからある良いページは昔のスタイルでやってるからなぁ……
  • バカにC言語は難しい~プログラミングの機会損失~

    プログラミングは難しい 注意: この記事は「プログラミング学習とはかくあるべき」、「こうやって学習するのが一番」ということを言いたいのではなく、プログラムを勉強したいが右も左もわからない人に少しでも勇気と情報を与えることを目的としています。過去の挫折経験からか、なかば愚痴っぽくなっていますがご勘弁を はじめに自分のプログラミング歴を軽く紹介して起きます。 年 言語 学習目的 2010 C言語 学校の実習 2011 C++ 組み込み系 2012~2017 None None 2018 Go,Js,Scala,Python 研究、Web開発 といった感じです。2012~2017年がNoneになっているのには原因が「C言語に挫折し、とにかくプログラミングがしたくなかった」からです。そう思ってしまった原因と、そこから立ち直ったことがこの記事を書いた理由です。 「おいおい、C言語ごときで挫折とは情け

    バカにC言語は難しい~プログラミングの機会損失~
    zyzy
    zyzy 2018/10/23
    もともとpythonが愛された理由そのものだな。ただCよりどっちかっつーとC++の地獄のが深い気が……
  • 侍エンジニア塾のC言語のサンプルがヤバすぎる。

    # include <stdio.h> # include <stdlib.h> // 構造体の宣言 typedef struct { int num; char *str; } strct; int main(void) { // 実体を生成 strct *entity; // 動的メモリの確保。確保したメモリをstrct型ポインタにキャスト。 entity = (strct*)malloc(sizeof(strct)); // メンバの初期化 entity->num = 0; entity->str = (char*)malloc(sizeof(32)); // メモリに文字列を代入 sprintf(entity->str, "%s %s!", "Hello", "World"); printf("%s\n", entity->str); // メモリの解放 free(entity->

    侍エンジニア塾のC言語のサンプルがヤバすぎる。
    zyzy
    zyzy 2018/10/17
    「Cもいくらか10年前とは違うらしいし……」と思いながら読み進めていたら確かにそれ以前の問題だった。sizeof(32)て……/C11から入る人を考えると、今K&Rというのもなぁ……何から見れば良いんだろう?
  • Facebookの新言語Skipの構文を雑に見てみた(1) - Qiita

    つい先日、Facebookが新しいプログラミングSkipの処理系をOSSとして公開しました。Skipの特徴として、公式ページでは Caching with Reactive Invalidation Safe Parallelism Efficient and Predictable GC Hybrid Functional/Object-Oriented Language Great Developer Experience Built by a Team of Veterans の6つが挙げられています。このうち全てを詳細に調べるのは面倒なので、今回は、4.の「Hybrid Functional/Object-Oriented Language」の部分についてのみ調べてみることにしました。結論からいうと、Skipの言語仕様は、特に構文においてはScalaKotlinの影響が色濃く、セ

    Facebookの新言語Skipの構文を雑に見てみた(1) - Qiita
    zyzy
    zyzy 2018/10/05
    これだけだとそれこそ「Scalaでええやん」となってしまうけど、多分他の特徴を追うべきなんだろうな/副作用トラッキングが目玉か
  • レジストリを汚さないためのツールを作りました

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? どういうツール 簡易的な仮想環境を作り、アプリケーションの動作を現在の環境から切り離すサンドボックスツールです。 レジストリとCドライブへのアクセスを仮想化することによって、 アプリケーションからシステム環境に影響を与えない様にする アプリケーションを単独で持ち運び可能にする などなどが可能になります。このツール自体はもちろんレジストリを汚しません。 どうやって DLLインジェクションからのIAT書き換えによるWin32 APIのフックにより動作を書き換えています。 IATを経由しない動的呼び出しもLoadLibraryやGetProc

    レジストリを汚さないためのツールを作りました
    zyzy
    zyzy 2018/09/21
    Dockerのwin版の滅茶苦茶最小単位構成の奴か……。
  • ある規約違反 iOS アプリが削除されるまでの4日間 - Qiita

    先日、ある iOS アプリが Apple Developer Enterprise Program (ADEP) の規約に違反していたため、Apple により削除されました。これは社内向けのアプリを Web サイトから不特定多数に対して配布するという典型的な違反事例でした。 この記事では規約違反を犯したアプリが削除されるまでの経緯と、規約違反にならないためにはどうするべきだったのかを解説します。 Day 1 - 発端 ある日、社内で使用している Slack にメッセージの着信を表すバッジがつきます。 ちょうど作業もひと段落したところだったので、私は着信のあった Slack チャンネルを開いてメッセージを確認します。 そんなメッセージとともに URL が添付されています。 さっそくその URL を開いてみると、表示されたのはとある海外SIM カードの Web サイトでした。サービス内容の

    ある規約違反 iOS アプリが削除されるまでの4日間 - Qiita
    zyzy
    zyzy 2018/09/20
    サポセンあるある
  • [2018] 個人でも使える!おすすめAPI一覧

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? コメント欄にも他の方のおすすめAPIを書いてくれているので是非見てください! Google Sheets API 公式:https://developers.google.com/sheets/api/reference/rest/ 数万行のGoogleスプレッドシートの読み取り・書き込み処理などができます 読み取りだけであればAPIkeyの発行だけでできますが、書き込みにはOAuth認証が必要です 参考:PythonとSheets API v4でGoogleスプレッドシートを読み書きする Google YouTube Data API

    [2018] 個人でも使える!おすすめAPI一覧
    zyzy
    zyzy 2018/09/18
    駅すぱあとのAPIなんてあったんだ!?
  • Rustcに付随しているLLVMを使う - Qiita

    注:以下の方法はWindows(*-pc-windows-msvc)では使えません Rustはアセンブラを生成するためにLLVMのライブラリを使います。これはtoolchainに含まれていて、例えばお手元の~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/codegen-backendsを覗いてみてください(ちなみにlibcoreやlibstdもこの辺にあります)。ここにlibrustc_codegen_llvm-llvm.soという共有ファイルがあり、これにLLVMのライブラリが含まれています。 一方、ユーザーがRustでLLVMを使う方法としては、例えば以下の記事でも紹介されていますが、llvm-sysがあります。 RustでLLVMしてみたメモ llvm-

    Rustcに付随しているLLVMを使う - Qiita
    zyzy
    zyzy 2018/09/18
    LLVMのインストール(特にリンカ関係)に四苦八苦した果てにclang入れりゃよかったんだと気づいた事あったけど確かにRustでもいけるか……
  • 10年モノのインフラを3年がかりでカイゼンした - Qiita

    CI いちおうJenkinsが立ってました。失敗して赤くなってるジョブが大半で、かといって誰が治すわけでもなく、よくわからないけど失敗したり成功したり、とにかく不安定でした。 CloudWatchのメトリクスで眺めて、EBSのIOPSクレジットの枯渇から激遅になって、Jenkinsジョブのタイムアウト設定で失敗になる、まで明らかにしました。その時の対処は、IOPSクレジット上限サイズの1TBのSSDのEBSを付けることと、同時並行で動けるJenkinsジョブ数に上限を設けることで、落ち着くようになりました。 とはいえ「Jenkinsおじさん」問題があるので、CIをどうにか民主化する必要があります。SaaSから検討して、TravisCIとCircleCIが最終候補になって、トラブルシュートをSSHでできるのを決め手に、CircleCIを導入しました。 8月末にCircleCI1.0が死んだと

    10年モノのインフラを3年がかりでカイゼンした - Qiita
    zyzy
    zyzy 2018/09/18
    こういうばっさりやる奴、やりたい気持ちは凄くあるけど、なかなか時間が取りにくいの、お部屋のお掃除と同じだよね。
  • 圏論のオススメ勉強法(プログラマ向け) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事は、iOSDC Japan 2018 で発表した「圏論とSwiftへの応用」の補足 - Qiita の続きです。 今回は、数学科でもコンピュータ科学出身でもない、単なるiOSエンジニアである筆者が、数学の 「圏論」 に興味を惹かれ、その流れで iOSDC Japan 2018 で登壇発表に至るまでの、 圏論のオススメ勉強法(プログラマ向け) について紹介したいと思います。 登壇資料参考: iOSDC Japan 2018 「圏論とSwiftへの応用」発表スライドメモ - Qiita iOSDC Japan 2018 で発表した「

    圏論のオススメ勉強法(プログラマ向け) - Qiita
    zyzy
    zyzy 2018/09/14
    圏論でぐぐるとわりとひっかかるあの動画。ただ日本語出版されてる本の難しさ以上に英語が難しい派だとどうにもなぁ……。
  • 「VB歴18年」の私がVBの素晴らしさを語る【C#もPHPもPythonもメインで使わない理由】 - Qiita

    1.「VB歴18年」の私「野田工房」の経歴 ・今回、はじめてQiitaで記事を書く ・私の生き様が「VBの素晴らしさを語る前提」となる ということで、「私の経歴」をざっくり書きます。 ◯私は、「才能」がまったくない「ダメ人間」だった! 下記の5つのエピソードから、私がどれだけ才能が無いかは、分かると思います。 (1)「8年間習ったピアノ」はまったく上達せず (2)「6年間習った英語」は、「一番の苦手科目」に (3)「美術」は、筆記100点でも、「実技」(絵)がひどすぎて「低評価」 (4)再起して、「2年間やった吹奏楽」も上達せず、音楽経験皆無の後輩に抜かれる始末 (5)「相手が2人以上」になると、まったく話せなくなるほどのコミュ障 当にリアルでは、「ダメ人間」です。 ◯そんな中、唯一成果が出たのが「パソコン」 小学1年から、「パソコン」を触る機会に恵まれました。 当時は、「超低スペック」

    「VB歴18年」の私がVBの素晴らしさを語る【C#もPHPもPythonもメインで使わない理由】 - Qiita
    zyzy
    zyzy 2018/08/30
    Qiitaであまり見ないテンションの人。それはそれとして、今Excel以外でVBやってる人、というのはそれなりに濃い人しか残ってないだろうから、独特の深みが形成されている世界だろう感はある。
  • JVM言語とJDKの関係を理解する

    背景 2017年の9月にOracleがJDKの新たなリリース・モデルを発表して以降、Javaユーザーを中心として、新たな短いリリースサイクルに追従できるのか、現在のOracle JDKに代わって配布されるOpenJDKにはLTS(長期サポート)が用意されるのかといったことを含めて不安に思っている方が多いようです。OpenJDKのバイナリをリリースしてサポートを提供しているのはOracle一社ではないですし、Java 11 LTSが提供される予定のAdoptOpenJDKに最悪逃げればいいかなと個人的には思っています(AdoptOpenJDKのサポートについて完全に理解しているわけではないので、これはあくまで印象です)。ただ、OpenJDK LTSが提供されればそれに越したことはないので、OpenJDK LTSが提供されることを願いたいです。 ただ、それは別にして、JVM言語が新しいJDKの

    JVM言語とJDKの関係を理解する
    zyzy
    zyzy 2018/08/30
    言われて見ればまぁそりゃそうか、というお話。