goo blog サービス終了のお知らせ 

be with you 共に生きる

共に生きるあらゆるものたちのこと

二転三転です

2023年05月18日 22時06分34秒 | AndroidStudioの経験

AndroidStudioでの開発経験を他の方々の参考に供するために「早く」公開したいのですが...

 

なかなか公開の記事?の作成ができない。競争する(仮想ではあるが)相手(複数?)がいないと、

なんとなく先延ばしにしてしまう。

 

YouTubeでは、淡々と技術だけにしよう?!

 

細かい事や生の声はブログにしよう。

 

今も「表示方法?」で悩んでいる。1週に1時間も開発時間をとらないから、できるわけないが?

 

英会話も、かつてのTOEIC800点は、今では600点台。。。コロナの3年間は大変な経験だったのだな!

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

長すぎる春という諺?もありました

2023年04月13日 18時51分39秒 | AndroidStudioの経験

作成中のアンドロイドアプリがなかなか完成にならない。

 

昨年10月には、新規に構想して、アウトラインはできた。それから、作成環境を従来使用していたEclipseから

AndroidStudioに変更する事にして、最初は、全く戸惑った。

10年前のAndroidStudioは、遅い(PC資源バカ食い)、バク多い(標準的とツールが考える標準に少しでも違反すると倒れる)であり、Eclipseの方が、軽い、安全、安心して使えた。

 

Eclipseはアンドロイドプラグインが無くなり、私も、新しいツールを使いたかったので、どの程度の物かと測るつもりで使い始めた。

遅いは、相変わらずだが、つまり資源バカ食いは変わらないが、ハード(メモリ増設、SSD化)をアップデートして対応した。

バグの多さは、ツール自体も洗練されていたのでOKではあったか?(出会っていないだけかも)

但し、余分な機能?が多数あり、(つまり使わない機能が多数あるという事ですが)ツール自体の使用ノウハウを知らないと使えなくなっていた。Eclipseとは、フィール面でも全く別物!

そんなこんなでツールの使い方を学びながら、更に、新しい?(Eclipseない)機能を学びながら、そして新しいクラスを学びながら、ジグザグだけど前進して来た。

 

作成する内に、昔々の身に付いた方法論が目を出し、木を見て森を見ずになってしまっていた。

エラーの場合はどうする?情報が足りない場合は補完はどうする?等々

ウォーターフォールになってしまった。「小さく生んで大きく育てる」を忘れている。

細目まで心配(設計)して作り上げるというホストの習慣に毒されてしまった。

表示の見栄えが悪い事を悩み、それで開発がストップしてしまった。

 

反省。長い春はダメだ!

 

 

 

 

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

RecyclerViewでの作成

2023年04月07日 22時31分54秒 | AndroidStudioの経験

結局、スキル不足が否めないのでChatGPTに聞いてみた。

「recyclerViewを使って7列のandroidアプリをつくる例」で問い合わせるとコーディング例を示してくれた。

これを妄信して、単に張り付けるだけではスキルを獲得できないので、一つ一つを吟味して

自分なりのプログラムとした。

作成には、次のステップが必要となる。

1 最初に表示するデータの1行分の表示する画面を定義する        
                     
    1行に7列あるならば、1列ごとの表示方法を決める。全部テキスト(TextView)になる事が多い。
                     
次にRecyclerViewを配置する(Flateする)画面を定義する        
                     
3 次にAdapterを下記の様に定義する            
  留意点は、ViewHolderを含むクラス定義とする          
  Adapterの役割は、表示データの保持と以下で示すメソッド(overrideする)の実装となる      
                     
                     
  public class ListAdapter extends RecyclerView.Adapter<ListAdapter.ViewHolder> {    
                     
      private List<String> itemList;              
                     
      public ListAdapter(List<String> itemList) {            
          this.itemList = itemList;              
      }                  
                     
      public class ViewHolder extends RecyclerView.ViewHolder {        
          public TextView itemText;              
                     
          public ViewHolder(View view) {            
              super(view);                
              itemText = view.findViewById(R.id.item_text);          
          }                  
      }                  
                     
      @Override                
      public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {      
          View itemView = LayoutInflater.from(parent.getContext())        
                  .inflate(R.layout.list_item, parent, false);          
          return new ViewHolder(itemView);            
      }                  
                     
      @Override                
      public void onBindViewHolder(ViewHolder holder, int position) {        
          String item = itemList.get(position);            
          holder.itemText.setText(item);            
      }                  
                     
      @Override                
      public int getItemCount() {              
          return itemList.size();              
      }                  
  }                  
                     
                     
次にRecyclerViewの初期化(GridLayoutManagerで7列を定義)        
                     
                     
          // RecyclerViewを初期化              
          recyclerView = findViewById(R.id.recycler_view);          
          recyclerView.setLayoutManager(new GridLayoutManager(this, 7));      
                     
次にAdapterを初期化して、RecyclerViewにアダプタをセットする        
                     
                     
      // アダプターを初期化              
      for (int i = 0; i < 70; i++) {              
          itemList.add("Item " + i);              
      }                  
      adapter = new ListAdapter(itemList);            
                     
      // RecyclerViewにアダプターをセット            
      recyclerView.setAdapter(adapter);            
  }                  

 

 
 
 
 
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

さて新年度です

2023年04月02日 21時00分43秒 | AndroidStudioの経験

サクラも、葉桜になろうかという頃です。

新年度になったので(は口実ですが)、本当は、昨年10月頃アプリ開発の実際をYouTubeで公開する予定だったのが、京王線シニア全線パスに当たって(有料ですが抽選でした)、それを使っての各駅探訪の撮影と編集、アップで2ヶ月は大忙しでした。

 

新年になって全線パスの話も終わったのですが、第2定年を過ぎた身では、溜まった疲れがドットでて、それから、今年の冬は、いつもより寒かったので体も動かず、冬眠状態でした。

その間も1週に1時間程度は、まずスタディを実行していました。

 

そもそも、というかヤットandroidStudioは使用するには、ある一定のスキルが必要だと感じました、使い始めて?

そしてツールの学びをしている内に、もっとも不得意とする画面作成でも、様々な壁にブツカリ(10年前にEclipseで結構マトモなアプリを作ったのに?実績があると、新しいツールをなめていた事が分かりました)、それも解決するために、またまた、時間がかかりました。

AndroidStudioで造るアプリでは、次の事が(私の場合は)必要です。(「でした」ではありません。スタディ進行中)

画面作成のスキル

RecyclerViewのスキル(一覧表示のスキル)

(昔は使っていたのに忘れたようです)Fragmentでの画面作成

 

更に、学習しながらの作成では、垂れ流しプログラミングになってしまいました。

これは、(自己満足になるでしようが)オブジェクト指向でのプログラミングを徹底する必要があります。

第2定年を過ぎた頃の「コロナ禍3年」は、何もしない、できない期間が長すぎて、スキルがゼロレベルになってました。

 

悩む事無く簡単にできたのは、画面遷移「定義」はツールが(定義すれば)自動で生成しました。

 

あと、Googleのお手本は、とても難しい内容でした。「です」かな?

 

様々な壁を乗り越え、乗り越え、もうすくアップできるものができる、と願っています。

アップする動画をどうやって作るかが、最後の課題(壁)としてあります。

 

 

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

外部記憶にオブジェクトとして書き出す

2023年03月21日 18時08分39秒 | AndroidStudioの経験

まだ開発結果を提示していないが、1月から試用しているChatGPTでオブジェクトを書き出す事を聞いてみた。

シリアライズして書き出すという事は、まだ、おぼろげに覚えていたが、具体的なコーディング例は忘れている。

聞いてみたら、実例が表示された。毎回聞くとキチンと答えてくれる。

プログラミングの辞書ですね。便利です。

 

まあ、プログラミングを日々「思いつきで」改善?しているので、なかなか出せません。

困ったものだね。これが、第2定年を迎えてしまった者の悪癖でしょうか?

期限の観念がなくなってます。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする