ワードはともだち

ICT支援員さんのはてなブログ

はじめに

こんにちは!

世界のICT支援員かじさんです。

こちらのブログではパソコン関係のHow toを中心に更新しています!

 

f:id:kajidaisuke:20210101201119j:plain

 ただ、私もすべての専門知識を持っているわけではありませんので。

 

パソコンに詳しい人がやってみたらこうなった!

→参考にするのは自由。でも正しい情報とは限らない。

→間違っていたら教えてほしい。

というスタンスで記事を更新していきます!

 

①ICT支援員の記事

ICT支援員・学校・教育関係の記事を更新します。

ICT支援員の方はぜひコメントください!

 

②パソコン関係の質問募集

都合がよい時は、お答えさせていただきます!

 

③海外

海外の記事をたまに更新しています!

あと海外×PCや、日本在住の外国人向けのPC相談もします!

if you have a question about computer,  please ask me.

 

f:id:kajidaisuke:20210101201124j:plain

 

たまに世界のどこかでたこやきを焼いてきました。

 

夢はラオス風呂屋さんをひらくこと。

ICT支援員の着任初日2

ICT支援員の着任初日のアクセスが多いです。

 

やはりみなさん初日の不安をかかえていらっしゃる?

厳密にはどのような疑問をもってブログ見に来ているのかはわかりませんが。

 

コメントにも書きましたが、みなさんが学校を気にするほど。

学校の先生側はみなさんのこと大して気にしていませんから!

 

・新しい人がいるなぁー。

・前と同じ人のほうが楽だったけど。

・ICT支援員?どう接していいかわからない。

・何の仕事頼んだらいいの?

 

そんな感じです。

着任初日について思いついたことをゆるめに更新してみます。

 

①ウケはねらわなくていい。

さっそく4月の挨拶ではずしたICT支援員がいました笑。

どんなにいいネタでも、先生方にとっての4月というのは。

それどころじゃないんです。

 

新しいクラスと新しい仕事でいっぱいいっぱい。

ウケをねらおうとする余裕に殺気立つでしょう。

 

②4月は種まきの時期。

着任の挨拶は朝がメインです。

8:30は先生のもっとも忙しい時間。

基本は「よろしくお願いします。」以外何も話さなくて合格。

 

もし4月の挨拶で話すのであれば。

・出身、経歴など自分の情報

・パソコンの何が得意か

その他の何か意図があった上での内容でないといけません。

 

出身・経歴、パソコンのスキルを話すのは。

そこをきっかけに私と仕事してください!

ということです。

 

実はICT支援員がおかしやすい致命的な失敗とは。

「先生が困っているのに質問されない」

ことです。

 

ICT支援員が初めてできた学校とか。

ICT支援員との関係ができていなかったりすると。

質問したいことがあっても質問せずにやめてしまうんですよね。

 

お忙しい先生の朝の時間をいただくのであれば、

今後の関係づくりのための種をまくのがポイントとなります。

 

 

つらつら更新しましたが。質問ありましたらコメントください。

アクセスがあればキレイに更新します。

【SwiftUI】絶対に挫折しないiPhoneアプリ開発「超」入門 第8版 に挫折した件7最終

こんにちは、かじさんです。

 

今年からSwiftUIの勉強をはじめました!

f:id:kajidaisuke:20210315145534j:plain

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

■問題の使い方

このブログでは、私が自分に対してつくった問題を載せていきます。

章の理解度を確認したり、振り返る時のまとめになります。

 

詳細は本体の

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

のほうでご確認ください。

 

一応、重要度も設定してみますね。

★★★:暗記必須

★★ :理解はしておく

★  :こういうものがあるんだなぁという認識でOK

 

■Capter10(第10章p301)の問題

覚えたり理解する必要があるのはこの章が最後。
デリゲートは文法として新しいものはない。
しかし:コロンの横に何でも入ることがわかった今。
全体のつながりを明確に把握しなければならない。

 

①書式:オプショナル型の取り出し②★★★
オプショナルチェーン

 

②書式:親クラスの指定(継承)★★★

 

③書式:親クラスがある場合のプロトコルの書式★★★

 

④タイプキャスティング★★

 

⑤デリゲート
:の横には構造体、クラス、プロトコル何でも来る。

var delegate : Lawyer?

delegateにはクラスLawyer()が入る。

 

var delegate : LawyerLicense?

delegateにはプロトコルLawyerLicenseに批准したクラスが入る。


デリゲート①defend()メソッドを実装するLawyerLicenseというプロトコルの宣言★★★

 

⑥デリゲート②LawyerLicenseに批准するLawyerクラスの宣言★★★

 

⑦デリゲート③デリゲートを持つDefenderクラスの宣言★★★

 

⑧デリゲート④taroプロパティさんがデリゲートでLawyer()と命令を呼出★★★

 

⑨@Bindingとは?★★

 

⑩@Stateのついたプロパティの子への渡し方★★

 

■Capter10(第10章)の回答

 

①書式:オプショナル型の取り出し②★★★
オプショナルチェーン

変数名?
.メソッド
.メソッド

 

②書式:親クラスの指定(継承)★★★

class クラス名:親クラス名{
}

 

③書式:親クラスがある場合のプロトコルの書式★★★

class クラス名:親クラス名, プロトコル名{
}

 

④タイプキャスティング★★

値 as! 型

 

⑤デリゲート
:の横には構造体、クラス、プロトコル何でも入る。

var delegate : Lawyer?

delegateにはクラスLawyer()が入る。

var delegate : LawyerLicense?

delegateにはプロトコルLawyerLicenseに批准したクラスが入る。


デリゲート①defend()メソッドを実装するLawyerLicenseというプロトコルの宣言★★★

protocol LawyerLicense{
func defend()
}

 

⑥デリゲート②LawyerLicenseに批准するLawyerクラスの宣言★★★
class Lawyer:LawyerLicense{
func defend(){
print("異議あり!")
}
}

 

⑦デリゲート③デリゲートを持つDefenderクラスの宣言★★★
class Defender{
var delegate:LawyerLicense?
}

 

⑧デリゲート④taroプロパティさんがデリゲートでLawyer()と命令を呼出★★★
let taro = Defender()
taro.delegate = Lawyer()
taro.delegate!.defend()

 

⑨@Bindingとは★★
親の@Stateキーワードのついたプロパティを参照できる。

 

⑩@Stateのついたプロパティの子への渡し方★★

$をつける

 

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

お読みいただきありがとうございます。

【SwiftUI】絶対に挫折しないiPhoneアプリ開発「超」入門 第8版 に挫折した件6

こんにちは、かじさんです。

 

今年からSwiftUIの勉強をはじめました!

f:id:kajidaisuke:20210315145534j:plain

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

■問題の使い方

このブログでは、私が自分に対してつくった問題を載せていきます。

章の理解度を確認したり、振り返る時のまとめになります。

 

詳細は本体の

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

のほうでご確認ください。

 

一応、重要度も設定してみますね。

★★★:暗記必須

★★ :理解はしておく

★  :こういうものがあるんだなぁという認識でOK

 

■Capter09(第9章p271)の問題

オプショナル型の理解が必須項目。
タプルと配列と辞書の違い。
そしてあきらかになるブールの真実p285
:コロンの横に来るのが「型」と覚えていたものが。
構造体やらプロトコルやら何でもあり。

 

①書式:三項演算子

 

②書式:オプショナル型の宣言★★★

 

③書式:オプショナル型の取り出し①★★★

 

 

④書式:タプルの宣言★★

 

⑤書式:タプルの取り出し★★

 

■Capter09(第9章)の回答

 

①書式:三項演算子

条件? 真の式 : 偽の式

 

②書式:オプショナル型の宣言★★★

var 変数名 : 型名? = nil

 

③書式:オプショナル型の取り出し①★★★

変数名!

取り出し②はp311。

 

④書式:タプルの宣言★★

var 変数名 = (要素名:値, 要素名:値, ...)

 

⑤書式:タプルの取り出し★★

変数名.要素名

 

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

お読みいただきありがとうございます。

【ICT】2年続けたICT支援員のいいところ

ICT支援員の仕事をはじめて2年が経ちました!

 f:id:kajidaisuke:20210331192130j:plain

いよいよ明日から一人一台の時代を迎えます。

この1年がPCサポートの正念場でしょう!

 

ICT支援員という「職」に関しては、去年述べたとおりです。

ICT支援員の需要は高まっています。

しかし、行政は専門職とは認めたくない。

認めればそれなりのお給料が必要になってきます。

バイトさん枠でなるべくいい人が頑張ってくれたら嬉しい。

と、ジリジリと何もかわらない感じですね。

 

そういうことは一旦置いておいて。

2年が終わったところの前向きな話題として。

ICT支援員の仕事のよいところなどについて語ってみます!!

■ICT支援員のいいところ

①学校職場はとてもホワイト

朝は8:30-17:00まで。
土日祝日はお休みなのでとても労働環境はいいです。
雇用先によりますが、残業もほぼありません。

あとこういった時世での、しっかりした感染対策。
マスク着用・配布、飲み会はしないなどのルール厳守。
学校は当たり前のことを当たり前にしてくれる。
この基本がとてもありがたいです。

先生たちは育休や介護のお休みをよくとります。
私たちにまったく同じ制度はありませんが
子どもの懇談のために休みたい
といった理由での都合を伝えやすい職場です。

ICT支援員の雇用先による話ですべて一律ではないですが。
学校職場側の対応はとてもよいです。

 

②コミュニケーション力向上

コミュニケーションが好きな人にとってよい職場です!
ただ、そうでない人にとってもコミュニケーション力向上の場となります。

・・・というのも学校の先生というのは。
子ども数十人も見る人間力・生きる力の塊だからです!
(覇気使いみたいなもんです笑

 

パソコンに詳しいけど、会話に自信がなかった人。
ICT支援員になってコミュニケーションができるようになる人がいます!

それは学校の先生の近くにいることで、こちらの人間力も上がるんですよね。

 

先生の圧が強すぎると負けそうになってしまいますが笑
こちらも先生と同じくらい大きな声を出す気持ちを持っていたほうがいいです!

 

③感謝される

こちらはICT支援員として当たり前の仕事をしているだけですが。

感謝されてしまいます!! 

f:id:kajidaisuke:20210331183245j:plain

もう一度言いますが、学校の先生は人間力・生きる力の塊だから

当たり前のことに感謝してくださる方がとても多いのです!

 

学校の先生の場合は

・毎日授業をするのが当たり前

・学習内容をクリアさせるのが当たり前

・いじめのないクラスをつくるのが当たり前

その上にさらにプラスアルファのものを達成してようやく。

「先生、すごい!」「ありがとう!」と感謝される。

 

それと比べると、私たちは簡単に感謝されてしまうのです。

それは学校の先生たちがすごいのであって。

ICT支援員がすごいかどうかはわかりませんので!

 

感謝されるのはそれはそれでありがたいと思いつつ。

謙虚にサポートに徹してまいります!!!

 

 ■ICT支援員の好きなところ

いいところよりも、さらに筆者の個人的な意味が強いものです。

①基本的にPCのことだけ

一日中パソコンの前・まわりにいれるのは快適です!

パソコンのことだけやっていればいいというのは幸せですね。 

②上下関係が・・・優しい!

ICT支援員どうしの上下関係はとてもフラット!!!

体育会と真逆の性質というのも理由の1つですが。

パソコン関係の情報はあまりに膨大、かつ更新が多すぎるので。

できる人がすべてをずっとできるわけではありません。

それよりも新しい情報を共有しあう仲間という感じですね!

■その他の情報について

①子どもと関われる?

関わろうと思えば、授業支援を積極的にすることもできます。

ただ・・・ICT支援員で子どもと関わろうとするのはちょっと遠回り?

 

子ども好きなら保育士。

教えたいなら先生。

プログラミング教室の先生など。

もっと確実に子どもと関わる仕事はあります。

 

ICT支援員だと半分以上は大人(先生)との関わりです。

子どもと大人を含めた幅広いコミュニケーションを楽しむ神々のお仕事です笑

 

②PCに詳しくなる?

こちらもある程度までは。

 

先生方がどこをどう操作したのかわからないエクセル。

一瞬で治すスキルが身につきます笑

 

やっぱり自分で勉強しないと知識は身につかないですけどね。

以上です!

 

今年度も恵まれた職場であることを感謝しつつ。

通常の3倍の速度で支援していきたいと思います!!

お読みいただきありがとうございます!

【SwiftUI】絶対に挫折しないiPhoneアプリ開発「超」入門 第8版 に挫折した件5

こんにちは、かじさんです。

 

今年からSwiftUIの勉強をはじめました!

f:id:kajidaisuke:20210315145534j:plain

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

■問題の使い方

このブログでは、私が自分に対してつくった問題を載せていきます。

章の理解度を確認したり、振り返る時のまとめになります。

 

詳細は本体の

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

のほうでご確認ください。

 

一応、重要度も設定してみますね。

★★★:暗記必須

★★ :理解はしておく

★  :こういうものがあるんだなぁという認識でOK

 

■Capter08(第8章)の問題

新しく出てきたクラスと構造体の違いの理解。
プロトコルは宣言よりも、批准のほうが大事。

①構造体とクラスの違いは?★★★

 

②橋渡しのコード★

 

 

③書式:プロトコルの宣言★★

 

④書式:プロトコルに批准する構造体の宣言★★★

■Capter08(第8章)の回答

 

①構造体とクラスの違いは?★★★

値型と参照型

 

②橋渡しのコード★

struct MapView: UIViewRepresentable{

    func makeUIView(context: Context) -> MKMapView {

        return MKMapView()

    }

    func updateUIView(_ uiView: MKMapView, context: Context) {

    }

}

古いフレームワークの橋渡し。
自分で決めるのは構造体名(MapView)のところだけ。
あとの MKMapViewなどはもともと用意されているもの。

 

③書式:プロトコルの宣言★★
   メソッド
   ストアドプロパティ
   コンピューテッドプロパティ

protocol プロトコル名{
    func メソッド名()
    var ストアドプロパティ名:型{get set}
    var コンピューテッドプロパティ:型{
        文
    }
}

 

④書式:プロトコルに批准する構造体の宣言★★★
struct 構造体名:プロトコル名{
}

クラスclassの場合も同じ。
class クラス名:プロトコル名{
}

ただ10章では親クラスなるものとプロトコルを併記。

class クラス名:親クラス名{
}
class クラス名:親クラス名, プロトコル名{
}

 

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

お読みいただきありがとうございます。

【SwiftUI】絶対に挫折しないiPhoneアプリ開発「超」入門 第8版 に挫折した件4

こんにちは、かじさんです。

 

今年からSwiftUIの勉強をはじめました!

f:id:kajidaisuke:20210315145534j:plain

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

■問題の使い方

このブログでは、私が自分に対してつくった問題を載せていきます。

章の理解度を確認したり、振り返る時のまとめになります。

 

詳細は本体の

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

のほうでご確認ください。

 

一応、重要度も設定してみますね。

★★★:暗記必須

★★ :理解はしておく

★  :こういうものがあるんだなぁという認識でOK

 

■Capter07(第7章)の問題

この章ではクロージャを理解する必要があります。
引数名actionとlabel両方だと難しかったので。
分けて考えるようにしています。

 

①Button構造体のイニシャライザの宣言★

 

 

②書式:関数の型★

 

③引数名actionにcount()メソッドを指定した場合★★
※labelのことは一旦無し

 

④引数名actionにクロージャ{self.number+=1}を指定した場合★★★

 

 

⑤書式:クロージャの書式★

 

⑥actionにクロージャ{self.number+=1}を指定・省略しない場合★

 

⑦引数名labelにText()メソッドを指定した場合★★
※actionのことは一旦無し

 

⑧引数名labelにクロージャ{Text("カウント")}を指定した場合★★★

 

⑨Button(action:{()->Void in self.number+=1},label:{Text("カウント")})をトレイリングクロージャにする★★★

 

⑩@stateとは?★

 

⑪書式:列挙体(enumeration)の宣言★★

 

⑫書式:列挙体の値取得★★

 

⑬書式:タイププロパティの宣言★★
インスタンスプロパティとの違いは?

 

⑭書式:タイププロパティの呼出★★
 

■Capter07(第7章)の回答

 

①Button構造体のイニシャライザの宣言★

init(action:()->Void, label:()->Label)

覚える必要はありません。
引数名actionにはメソッド(関数)を指定できる。
ということがわかればOK。

 

②書式:関数の型★

(引数名:型)->戻り値の型

 

③引数名actionにcount()メソッドを指定した場合★★
※labelのことは一旦無し

Button(action:count)

()はつけない。

 

④引数名actionにクロージャ{self.number+=1}を指定した場合★★★

Button(action:{self.number+=1})

処理を引数にそのまま書けるというのが今回のメインの話。

 

⑤書式:クロージャの書式★

{(引数名:型)->戻り値の型 in文}

 

⑥actionにクロージャ{self.number+=1}を指定・省略しない場合★

Button(action:{()->Void in self.number+=1})

 

⑦引数名labelにText()メソッドを指定した場合★★
※actionのことは一旦無し

Button(label:Text)

 

⑧引数名labelにクロージャ{Text("カウント")}を指定した場合★★★

Button(label:{Text("カウント")})

 

⑨Button(action:{()->Void in self.number+=1},label:{Text("カウント")})をトレイリングクロージャにする★★★

Button(action:{()->Void in self.number+=1}){
Text("カウント")
}

 

⑩@stateとは?★

画面を再描画するプロパティラッパーの1つ。
これを忘れても戻って確認すればいい。(後でまた出てきます)
クロージャは理解しておぼえていないと先に進めないのです。

 

⑪書式:列挙体(enumeration)の宣言★★

enum 列挙体名{
case 値名
case 値名
}

 

⑫書式:列挙体の値取得★★

var 変数名 = 列挙体名.値名

 

⑬書式:タイププロパティの宣言★★
インスタンスプロパティとの違いは?

struct 構造体{
static var タイププロパティ名 = 値
たいやきの尾びれ

 

⑭書式:タイププロパティの呼出★★
構造体名.タイププロパティ名
()がない。()をつけるとインスタンスとなる。

 

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

お読みいただきありがとうございます。

【SwiftUI】絶対に挫折しないiPhoneアプリ開発「超」入門 第8版 に挫折した件3

こんにちは、かじさんです。

 

今年からSwiftUIの勉強をはじめました!

f:id:kajidaisuke:20210315145534j:plain

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

■問題の使い方

このブログでは、私が自分に対してつくった問題を載せていきます。

章の理解度を確認したり、振り返る時のまとめになります。

 

詳細は本体の

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

のほうでご確認ください。

 

一応、重要度も設定してみますね。

★★★:暗記必須

★★ :理解はしておく

★  :こういうものがあるんだなぁという認識でOK

 

■Capter06(第6章)の問題 

ストアドプロパティStored Property
コンピューテッドプロパティComputed Property

6章でも漢字交じりの書式を覚えるより、本の例文を覚えてしまいます。
関数の宣言と呼出、構造体の宣言と呼出、ここで混乱していると先に進めません。

イニシャライザは原形のデフォルトイニシャライザをまず覚える。
すると()の中身は何となく思い出せます。

 

①正方形の面積を計算するSquare構造体の宣言★★★
returnは省略。
コンピューテッドプロパティは〇〇を取らない
〇〇〇が必ずある。

 

②デフォルトイニシャライザ★★★

 

③書式:イニシャライザの宣言★★

 

④架空のIPhone構造体の宣言★★★

 

⑤selfとは?★★

 

⑥架空のIPhone構造体のインスタンスとイニシャライザの呼出★★★

 

 

■Capter06(第6章)の回答

 

①正方形の面積を計算するSquare構造体の宣言★★★
returnは省略。
コンピューテッドプロパティは〇〇を取らない
〇〇〇が必ずある。

struct Square{
var sideLength = 3
var area:Int{
sideLength*sideLength
}
}
↑型名の指定を忘れていないか確認。
コンピューテッドプロパティは引数を取らない。
戻り値が必ずある。

 

②デフォルトイニシャライザ★★★
init(){
}
まず原形から覚える。

 

③書式:イニシャライザの宣言★★

init(ラベル1 引数名1:型1, ラベル2...){

}

 

④架空のIPhone構造体の宣言★★★

struct IPhone{
var lang:String
var pass:String
init(lang lang:String, pass pass:String){
self.lang = lang
self.pass = pass
}
}
言語とパスワードのわかりやすい例文ごと覚えてしまう。

 

④selfとは?★★

プロパティ。
つかないのは引数。

 

⑤架空のIPhone構造体のインスタンスとイニシャライザの呼出★★★

var iPhone = IPhone(lang : "日本語", pass : "0123")

 

例がiPhoneなので大文字の重なりに混乱しますが。
プロパティは小文字はじまりのローワーキャメルケースiPhone
構造体は大文字はじまりのアッパーキャメルケースIPhoneです。
キャメルケースについてはp76


※素人筆者のわからないメモ
①selfのことがわかるようでわからない。
引数が他からもってきた値ということはわかる。

 

絶対に挫折しないiPhoneアプリ開発「超」入門 第8版

お読みいただきありがとうございます。