Soumettre la recherche
Mettre en ligne
何が変わった? VisualWorks 8.0
•
2 j'aime
•
1,553 vues
M
Masashi Umezawa
Suivre
老舗の商用Smalltalk、VisualWorks 8.0で新たに導入されたライブラリ群の紹介です。
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 20
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
今日から使おうSmalltalk
今日から使おうSmalltalk
Sho Yoshida
TruffleSqueakの紹介
TruffleSqueakの紹介
Masashi Umezawa
20210515 cae linux_install_vb
20210515 cae linux_install_vb
YohichiShiina
Decsx launcherv 2.5
Decsx launcherv 2.5
Etsuji Nomura
Free cad 0.19.2 and cfdof (Japanese Ver.)
Free cad 0.19.2 and cfdof (Japanese Ver.)
YohichiShiina
Session9 - LabVIEW NXG Training Course
Session9 - LabVIEW NXG Training Course
Yusuke Tochigi
Intro - LabVIEW NXG Training Course
Intro - LabVIEW NXG Training Course
Yusuke Tochigi
20210515 of4 wi&paraview 5.9.0_motorbike
20210515 of4 wi&paraview 5.9.0_motorbike
YohichiShiina
Recommandé
今日から使おうSmalltalk
今日から使おうSmalltalk
Sho Yoshida
TruffleSqueakの紹介
TruffleSqueakの紹介
Masashi Umezawa
20210515 cae linux_install_vb
20210515 cae linux_install_vb
YohichiShiina
Decsx launcherv 2.5
Decsx launcherv 2.5
Etsuji Nomura
Free cad 0.19.2 and cfdof (Japanese Ver.)
Free cad 0.19.2 and cfdof (Japanese Ver.)
YohichiShiina
Session9 - LabVIEW NXG Training Course
Session9 - LabVIEW NXG Training Course
Yusuke Tochigi
Intro - LabVIEW NXG Training Course
Intro - LabVIEW NXG Training Course
Yusuke Tochigi
20210515 of4 wi&paraview 5.9.0_motorbike
20210515 of4 wi&paraview 5.9.0_motorbike
YohichiShiina
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
murai1972
Session1 - LabVIEW NXG Training Course
Session1 - LabVIEW NXG Training Course
Yusuke Tochigi
Session8 - LabVIEW NXG Training Course
Session8 - LabVIEW NXG Training Course
Yusuke Tochigi
室内空調シミュレーション手順書
室内空調シミュレーション手順書
murai1972
griffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jggug
kimukou_26 Kimukou
Session3 - LabVIEW NXG Training Course
Session3 - LabVIEW NXG Training Course
Yusuke Tochigi
LabVIEW NXG Current Status @ 2020
LabVIEW NXG Current Status @ 2020
Yusuke Tochigi
20090124shibuya Trac
20090124shibuya Trac
Kazuya Hirobe
.NET CoreとVS Codeで作る人狼知能
.NET CoreとVS Codeで作る人狼知能
takots
Shibuyalisp6lt
Shibuyalisp6lt
kenhys
SDSoC 2016.3+yocto project
SDSoC 2016.3+yocto project
Hidemi Ishihara
Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021
Etsuji Nomura
Osc2010 tokyo fall@kaorun
Osc2010 tokyo fall@kaorun
Kaoru NAKAMURA
Dexcs2021 of install2
Dexcs2021 of install2
Etsuji Nomura
OpenWrtによるサイト間IPsec接続
OpenWrtによるサイト間IPsec接続
Takashi Umeno
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Tetsuyuki Kobayashi
123 Dexcs2021
123 Dexcs2021
Etsuji Nomura
Vagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージ
Yoshimi Tominaga
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
takots
Visual Studio 2010で楽しくデバッグ
Visual Studio 2010で楽しくデバッグ
Kazushi Kamegawa
Visual Studio 2012 Native Debugger Feature
Visual Studio 2012 Native Debugger Feature
Kazushi Kamegawa
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
m ishizaki
Contenu connexe
Tendances
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
murai1972
Session1 - LabVIEW NXG Training Course
Session1 - LabVIEW NXG Training Course
Yusuke Tochigi
Session8 - LabVIEW NXG Training Course
Session8 - LabVIEW NXG Training Course
Yusuke Tochigi
室内空調シミュレーション手順書
室内空調シミュレーション手順書
murai1972
griffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jggug
kimukou_26 Kimukou
Session3 - LabVIEW NXG Training Course
Session3 - LabVIEW NXG Training Course
Yusuke Tochigi
LabVIEW NXG Current Status @ 2020
LabVIEW NXG Current Status @ 2020
Yusuke Tochigi
20090124shibuya Trac
20090124shibuya Trac
Kazuya Hirobe
.NET CoreとVS Codeで作る人狼知能
.NET CoreとVS Codeで作る人狼知能
takots
Shibuyalisp6lt
Shibuyalisp6lt
kenhys
SDSoC 2016.3+yocto project
SDSoC 2016.3+yocto project
Hidemi Ishihara
Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021
Etsuji Nomura
Osc2010 tokyo fall@kaorun
Osc2010 tokyo fall@kaorun
Kaoru NAKAMURA
Dexcs2021 of install2
Dexcs2021 of install2
Etsuji Nomura
OpenWrtによるサイト間IPsec接続
OpenWrtによるサイト間IPsec接続
Takashi Umeno
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Tetsuyuki Kobayashi
123 Dexcs2021
123 Dexcs2021
Etsuji Nomura
Vagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージ
Yoshimi Tominaga
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
takots
Tendances
(19)
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
Session1 - LabVIEW NXG Training Course
Session1 - LabVIEW NXG Training Course
Session8 - LabVIEW NXG Training Course
Session8 - LabVIEW NXG Training Course
室内空調シミュレーション手順書
室内空調シミュレーション手順書
griffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jggug
Session3 - LabVIEW NXG Training Course
Session3 - LabVIEW NXG Training Course
LabVIEW NXG Current Status @ 2020
LabVIEW NXG Current Status @ 2020
20090124shibuya Trac
20090124shibuya Trac
.NET CoreとVS Codeで作る人狼知能
.NET CoreとVS Codeで作る人狼知能
Shibuyalisp6lt
Shibuyalisp6lt
SDSoC 2016.3+yocto project
SDSoC 2016.3+yocto project
Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021
Osc2010 tokyo fall@kaorun
Osc2010 tokyo fall@kaorun
Dexcs2021 of install2
Dexcs2021 of install2
OpenWrtによるサイト間IPsec接続
OpenWrtによるサイト間IPsec接続
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Linuxのユーザーランドをinitから全てまるごとgolangで書く
123 Dexcs2021
123 Dexcs2021
Vagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージ
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
C#版人狼知能エージェントの作り方(MonoDevelop/Xamarin Studio編)
Similaire à 何が変わった? VisualWorks 8.0
Visual Studio 2010で楽しくデバッグ
Visual Studio 2010で楽しくデバッグ
Kazushi Kamegawa
Visual Studio 2012 Native Debugger Feature
Visual Studio 2012 Native Debugger Feature
Kazushi Kamegawa
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
m ishizaki
OSC Nagoya NETMF 160528
OSC Nagoya NETMF 160528
Atomu Hidaka
20151118パートナーソリューションセミナー2015プレゼンテーション public
20151118パートナーソリューションセミナー2015プレゼンテーション public
Kazunori Tatsuki
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(応用編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(応用編)
シスコシステムズ合同会社
オレたちとVisual Studioとの関係を話そう
オレたちとVisual Studioとの関係を話そう
Mitsuhito Ishino
coma - creator’s talk session: Code - openFrameworks
coma - creator’s talk session: Code - openFrameworks
Atsushi Tadokoro
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
aitc_jp
Nodeにしましょう
Nodeにしましょう
Yuzo Hebishima
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
VirtualTech Japan Inc.
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ
慎一 古賀
使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~
使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~
Saki Homma
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
Hiroshi Maekawa
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
GuildWorks
IoT Cyber Security Counter Measurement
IoT Cyber Security Counter Measurement
Kiyoshi Ogawa
LightSwitchで遊んでみた
LightSwitchで遊んでみた
Yoshitaka Seo
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
GoAzure
Go azure tfs_service
Go azure tfs_service
Kaoru NAKAMURA
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
Yusuke Yamada
Similaire à 何が変わった? VisualWorks 8.0
(20)
Visual Studio 2010で楽しくデバッグ
Visual Studio 2010で楽しくデバッグ
Visual Studio 2012 Native Debugger Feature
Visual Studio 2012 Native Debugger Feature
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
OSC Nagoya NETMF 160528
OSC Nagoya NETMF 160528
20151118パートナーソリューションセミナー2015プレゼンテーション public
20151118パートナーソリューションセミナー2015プレゼンテーション public
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(応用編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(応用編)
オレたちとVisual Studioとの関係を話そう
オレたちとVisual Studioとの関係を話そう
coma - creator’s talk session: Code - openFrameworks
coma - creator’s talk session: Code - openFrameworks
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
Nodeにしましょう
Nodeにしましょう
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ
使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~
使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
IoT Cyber Security Counter Measurement
IoT Cyber Security Counter Measurement
LightSwitchで遊んでみた
LightSwitchで遊んでみた
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
Go azure tfs_service
Go azure tfs_service
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
Plus de Masashi Umezawa
第142回Smalltalk勉強会 - PharoJSで作るWebアプリケーション
第142回Smalltalk勉強会 - PharoJSで作るWebアプリケーション
Masashi Umezawa
FileManで楽々ファイル操作
FileManで楽々ファイル操作
Masashi Umezawa
SmalltalkBoltでUFFI入門
SmalltalkBoltでUFFI入門
Masashi Umezawa
TaskItの紹介
TaskItの紹介
Masashi Umezawa
Smalltalk勉強会 - 過去、現在、そして未来へ のその後
Smalltalk勉強会 - 過去、現在、そして未来へ のその後
Masashi Umezawa
Revealing ALLSTOCKER
Revealing ALLSTOCKER
Masashi Umezawa
TarandocでJSONを永続化
TarandocでJSONを永続化
Masashi Umezawa
Dockerizing pharo
Dockerizing pharo
Masashi Umezawa
今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門
Masashi Umezawa
Tarantubeでメッセージキューを使い倒す
Tarantubeでメッセージキューを使い倒す
Masashi Umezawa
VerStixの紹介
VerStixの紹介
Masashi Umezawa
Oldtalk - あのころの処理系は今
Oldtalk - あのころの処理系は今
Masashi Umezawa
Pyonkeeを鳴らす
Pyonkeeを鳴らす
Masashi Umezawa
Smalltalk勉強会 - 過去、現在、そして未来へ
Smalltalk勉強会 - 過去、現在、そして未来へ
Masashi Umezawa
Tarantalk
Tarantalk
Masashi Umezawa
Smalltalkと型について
Smalltalkと型について
Masashi Umezawa
Introduction of Pharo 5.0
Introduction of Pharo 5.0
Masashi Umezawa
Why!? Smalltalk
Why!? Smalltalk
Masashi Umezawa
Pillarの紹介
Pillarの紹介
Masashi Umezawa
Scrumの紹介とXPプロジェクトへの適用(Scrum and XP)
Scrumの紹介とXPプロジェクトへの適用(Scrum and XP)
Masashi Umezawa
Plus de Masashi Umezawa
(20)
第142回Smalltalk勉強会 - PharoJSで作るWebアプリケーション
第142回Smalltalk勉強会 - PharoJSで作るWebアプリケーション
FileManで楽々ファイル操作
FileManで楽々ファイル操作
SmalltalkBoltでUFFI入門
SmalltalkBoltでUFFI入門
TaskItの紹介
TaskItの紹介
Smalltalk勉強会 - 過去、現在、そして未来へ のその後
Smalltalk勉強会 - 過去、現在、そして未来へ のその後
Revealing ALLSTOCKER
Revealing ALLSTOCKER
TarandocでJSONを永続化
TarandocでJSONを永続化
Dockerizing pharo
Dockerizing pharo
今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門
Tarantubeでメッセージキューを使い倒す
Tarantubeでメッセージキューを使い倒す
VerStixの紹介
VerStixの紹介
Oldtalk - あのころの処理系は今
Oldtalk - あのころの処理系は今
Pyonkeeを鳴らす
Pyonkeeを鳴らす
Smalltalk勉強会 - 過去、現在、そして未来へ
Smalltalk勉強会 - 過去、現在、そして未来へ
Tarantalk
Tarantalk
Smalltalkと型について
Smalltalkと型について
Introduction of Pharo 5.0
Introduction of Pharo 5.0
Why!? Smalltalk
Why!? Smalltalk
Pillarの紹介
Pillarの紹介
Scrumの紹介とXPプロジェクトへの適用(Scrum and XP)
Scrumの紹介とXPプロジェクトへの適用(Scrum and XP)
何が変わった? VisualWorks 8.0
1.
第72回 Smalltalk勉強会 2015 Masashi
Umezawa
2.
はじめに 広く浅く話します 後半は皆でいろいろと試す時間にします 参考: ○第16回Smalltalk勉強会資料 「何が変わった?
VisualWorks7.7」
3.
VisualWorksとは 最大のシェアを持つ老舗のSmalltalk 安定 ○
Smalltalk-80直系 速い ○ 最近はCogVMが肉薄 http://d.hatena.ne.jp/sumim/20140826/p1 でかい ○ フルインストールで1GB程度消費 ○ 必要なものは大抵そろう
4.
VisualWorksの歴史 1992: ObjectWorks/Smalltalk 1993: VisualWorks
1.0 1994-1997: VisualWorks 2.0, 2.5 1998: VisualWorks 3 VisualWorks 4 (幻) 1999-2001: VisualWorks 5i - 5i.4 2002-2014: VisualWorks 7 - 7.10 2015: VisualWorks 8 <= イマココ
5.
8.0の新機能 いろいろあるので詳細はリリースノート参照 開発者からみて面白そうな部分をピックアップ
クライアント系 Text2 UISkinning サーバ系 SiouX AppeX
6.
Text2 とは 従来のTextを置き換えるもの
よりリッチなテキスト表現が可能に ○ イメージ埋め込み、ワードラップ、アクション ○ 行頭文字、アラインメント、アノテーション ○ Unicodeを意識した検索、検索ダイアログ、diffなど 実例: システムブラウザのコードペインもText2で実装
7.
Text2によるコードペイン
8.
Text2 の構成要素 (1)
Document Text2の主要モデル DocumentSegmentを集約 Zeroインデックス! (文字と文字の間を指すため) DocumentSegment テキストの特定部分(ボールド、イメージ埋め込みなど) DocumentAction Segmentの一種 ○ リンクのクリックなど動作のある部分
9.
Text2 の構成要素 (2)
Flow 2次元領域にテキストをレイアウトするためのモデル FlowSegmentを集約 カーソル移動をサポート(何文字目、何行目) FlowSegment テキストの特定箇所をレンダリングするためのモデル ○ 改行部、行頭文字部、パスワード部など
10.
Text2 の構成要素 (3)
DocumentView Documentのビュー 選択範囲、編集範囲、編集履歴などを管理 DocumentEditor 編集可能なDocumentのビュー InputEditor 行が1行に限定されたDocumentEditor
11.
UISkinning よりネイティブらしいウィジェット表現 「カメレオンビュー」廃止
薄いラッパーでシンプルに ○ 重厚なAbstract Factoryをやめ、シンプルなStrategyで実現 ○ OSのAPIを割とすぐに呼び出す形 ○ 幻となったWidgetryの考えを再利用 Default, Windows, Macのスキンがある ○ MotifやOS/2、Smalltalk-80のスキンは廃止 ○ 縦のスライダーなどもなくなった
12.
SiouX 新たに実装されたWebサーバ 軽量
Xtreamsベース ○ オンデマンドに必要部分のみをパースする HTTPS, WebSocket, Servletもサポート SeasideやAppeXのHTTPサーバとして動作 文字コードはデフォルトでUTF8
13.
SiouXの主要クラス Responder あるURLに対する処理を記述
Server Responderを集約 RequestContext 現在のリクエスト情報が入っている RequestFilter 認証など、リクエストのフックを記述 Session SessionCache
14.
SiouXの例 (1) SiouX.HttpResponderのサブクラス HelloResponderを定義
executeRequestFor:を実装 executeRequestFor: aRequestContext ^aRequestContext response contentType: 'text/html'; contents: '<html><body>Hello:', Time now printString, '</body></html>'
15.
SiouXの例 (2) サーバの起動 ○
Responderにpathを指定して追加 server := Server id: 'HelloServer'. responder := HelloResponder new. responder path: '/hello'. server addResponder: responder. server listenOn: 8000 for: SiouX.HttpConnection. server start.
16.
AppeX Webアプリフレームワーク HTTP5の機能を活用 ○
Server side events (SSE) ○ Session Storage アノテーション活用でコード量削減 クライアントをJSで記述可能 ○ JSとSmalltalkがWebSocketで通信 ○ JS部分の開発もSmalltalkのIDEで書く ○ 既存JSのライブラリ取り込みが自由にできる
17.
AppeXのサンプル(1) AppeX-Examplesを参照のこと AppeX-Examples-Mobile
jQueryMobileを使う例 "Web Servers"のUIを開き Running状態にした後、以下のURLでアクセスしてみる http://localhost:8888/appex/simplest-app http://localhost:8888/appex/chat-room-demo
18.
AppeXのサンプル(2) サーバ側: Appex.Applicationを継承
Smalltalkで記述 applicationClientClassを実装し、Clientクラスと関連付け クライアント側: Applec.ApplicationClientを継承 JSで記述 SimpleApp, SimpleAppClientはサーバ側のみの例 Chat, ChatClient の例が概観をつかむには良い
19.
AppeXのサンプル(3) Chat クラスメソッド側 ○
静的コンテンツ ○ 各セッションで共通のサービスの実装 インスタンスメソッド側 ○ セッション固有の処理を実装 ChatClient インスタンスメソッドを見ると、JSが書いてある! this.asyncMessageToServer('メソッド名') で非同期通信
20.
まとめ VisualWorksは歴史ある商用Smalltalk 安定していて、速い
ビジネスで使うための部品が最初からそろっている 8.0となり、さらなる進化に期待したい
Télécharger maintenant