android – Is this how professionals code?

As a self-taught programmer, I have no idea what's going on in the real world and professional Android development (and I'm sure there are a lot of other people here too) .

I just created the base of my first application without a tutorial and wondered if I was going in the right direction, especially regarding the coding style, the comments, the layout of the functions (each function must do a thing?), etc.

If some professional programmers give me their opinion on all that can be improved, mainly in terms of style, but I'm sure you'll find all the programming problems, too: D, I would be more than grateful.

I know I still have a long way to go but I am ready to learn and so more than grateful for any advice in any respect.

Thank you in advance.

MAIN ACTIVITY.KT

package com.hooni.nbun1kotlin

import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.widget.Button
import android.widget.EditText
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.android.material.snackbar.Snackbar
import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.alertdialog_addvalue.view.*
import kotlinx.android.synthetic.main.toolbar.*

class MainActivity : AppCompatActivity() {

    // Declaring member variables:
    // - mutableList contains data class Entry (Name of Entry, Value of Entry)
    // - sumValue is the sum of the values of all entries
    private val entryList: MutableList = mutableListOf()
    private var sumValue: Double = 0.0
    private lateinit var textViewTotalValue: TextView
    private lateinit var textViewValuePerPerson: TextView

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        initUI()
    }

    private fun initUI() {
        initToolbar()
        initRecyclerView()
        initFAB()
        initButtons()
        initSumFields()
    }
    private fun initRecyclerView() {
        recyclerView_ListOfItems.apply {
            layoutManager = LinearLayoutManager(this@MainActivity)
            adapter = ItemAdapter(entryList)
        }
    }

    private fun initToolbar() {
        toolbar.inflateMenu(R.menu.menu_main)
        toolbar.setOnMenuItemClickListener {
            when(it.itemId) {
                R.id.settings -> Toast.makeText(this, "Settings", Toast.LENGTH_SHORT).show()
                R.id.share -> Toast.makeText(this, "Share", Toast.LENGTH_SHORT).show()
            }
            true
        }
    }

    private fun initFAB() {
        val fab: View = findViewById(R.id.fab)
        fab.setOnClickListener {
            val mDialogView = LayoutInflater.from(this).inflate(R.layout.alertdialog_addvalue,null)
            val mBuilder = AlertDialog.Builder(this).setView(mDialogView).setTitle("Add Entry")
            val mAlertDialog = mBuilder.show()

            // Action when pressing "Cancel" in the popup
            mDialogView.button_cancel.setOnClickListener {
                mAlertDialog.dismiss()
            }

            // If "OK" is being pressed the values from the edit text field (Name & Value of the entry)
            // are converted to the corresponding data types (String, Double) and then added to the
            // list of entries (entryList)
            //
            // The adapter is being notified that there has been a change in the mutableList
            // the sumValue (Double) is being increased by the entered value and the textView
            // is being updated
            mDialogView.button_ok.setOnClickListener {
                mAlertDialog.dismiss()
                val itemName = mDialogView.editText_itemName.text.toString()
                val itemValue = mDialogView.editText_itemValue.text.toString().toDouble()

                entryList.add(Entry(itemName,itemValue))
                recyclerView_ListOfItems.adapter?.notifyDataSetChanged()
                sumValue += itemValue
                textViewTotalValue.text = sumValue.toString()

                // A snackbar is being shown to undo the action (i.e. removing the entry from the
                // mutableList (entryList), updating sumValue (Double) & the corresponding textView
                val snackbar = Snackbar.make(mainActivity,"Item added",Snackbar.LENGTH_SHORT)
                snackbar.setAction("Undo") {
                    entryList.remove(Entry(itemName,itemValue))
                    recyclerView_ListOfItems.adapter?.notifyDataSetChanged()
                    sumValue -= itemValue
                    textViewTotalValue.text = sumValue.toString()
                }
                snackbar.show()
            }
        }
    }


    private fun initButtons() {

        // the UI for increasing the amount of people & calculate button are initialized
        val buttonIncrease = findViewById

ITEMADAPTER.KT

package com.hooni.nbun1kotlin

import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import kotlinx.android.synthetic.main.listview_item.view.*

class ItemAdapter (private val items: MutableList) :
    RecyclerView.Adapter() {

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ItemViewHolder {
        return ItemViewHolder(LayoutInflater.from(parent.context)
            .inflate(R.layout.listview_item,parent,false))
    }

    override fun getItemCount(): Int {
        return items.size
    }

    override fun onBindViewHolder(holder: ItemViewHolder, position: Int) {
        when(holder) {
            is ItemViewHolder -> {
                holder?.itemDescription?.text = items.get(position).name
                holder?.itemValue?.text = items.get(position).value.toString()
            }
        }
    }

    class ItemViewHolder constructor(view: View) : RecyclerView.ViewHolder (view) {
        val itemDescription = view.listView_valueDescription!!
        val itemValue = view.listView_value!!
    }

}

ACTIVITY_MAIN.XML




    


    

    

    

    

        

            

ALERTDIALOG_ADDVALUE.XML




    

    

    

        

LISTVIEW_ITEM.XML




    

        

        

        

        
    


Toolbar.XML



MENU_MAIN.XML



    
    

RichPush – Push Notification Advertising Network for Professionals!

Need results? Run push ads: RichPush

Push notification advertising is a relatively new format that allows advertisers to show their ads in notifications of web browsers or mobile apps.

What are the benefits of push ads:

  1. Human traffic (there are no robots, because it is difficult to imitate the push notification behavior and the format is relatively new)
  2. CPC model with rather low rates …

RichPush – Push Notification Advertising Network for Professionals!

[GET][NULLED] – Kalium – Creative theme for professionals v2.9.1

[​IMG]
[​IMG]

[GET][NULLED] – Kalium – Creative theme for professionals v2.9.1

[GET][NULLED] – Kalium – Creative theme for professionals v2.9.1

[​IMG]
[​IMG]

[GET][NULLED] – Kalium – Creative theme for professionals v2.9.1

Presentations designed for professionals, students, seminars, critics, researches, etc. for $ 6

Presentations for professionals, students, seminars, journals, research, etc.

Hello,
Welcome to my presentation service.
I have 11 years of experience in creating PPT with an American investment bank.
I can create a good PPT presentation for you according to your needs.
All presentation work will be done with 100% responsibility.

.

testing – What is the relationship between IV & V professionals, testers and quality assurance engineers?

In the context of SDLC, I know that Verification AND VALIDATION is to check the deliverable input of the previous phase and to validate the output of the current one.
And this test is a phase among the SDLC phases.

Based on my research, I found in UToronto course notes:

V & V performed by a separate contractor

Which means that IV & V professionals are externally involved in the SDLC process and therefore have nothing to do with the test phase.

By cons, I find on another course that:

The test is the most common but not the only form of V & V

Which means that the testers are involved in IV & V.

This puzzles me as to whether the test phase and IV & V are performed by the same person (say a QA engineer) or if the people who perform IV & V are not involved in the testing phase.

Does the work of V & V professional exist in the software industry? What is the relationship between QA engineers, testers and IV & V?

How is the V & V process involved in project management: Is it running continuously within SDLC at the beginning or end?

Does the SDLC also include IV & V as a scene?

testing – What is the relationship between V & V professionals, testers and quality assurance engineers?

In the context of SDLC, I know that V & V consists in verifying the deliverable entry of the previous phase and validating the output of the current one.
And this test is a phase among the SDLC phases.

Based on my research, I found in UToronto course notes:

V & V performed by a separate contractor

Which means that V & V professionals are externally involved in SDLC and therefore have nothing to do with the testing phase.

By cons, I find on another course that:

The test is the most common but not the only form of V & V
Which means that the testers are involved in the V & V.

It puzzles me as to whether the test phase and the V & V are performed by the same person (say a QA engineer) or if the people who perform the V & V are not involved in the testing phase.

Does the work of V & V professional exist in the software industry? What is the relationship between QA engineers, testers and V & V?

How is the V & V process involved in project management: Is it running continuously within SDLC at the beginning or end?

In addition, does the SDLC include V & V as a scene?

UX and UI for beginner professionals

Am a novice web designer experienced in designing Github pages. I do not like imported models of wix or other models and prefer my own design with the help of open source coding.

example: http: //www.entagma.com/

Please share your thoughts on the fundamentals of UI and UX and the basic approach of website design

Binom – Affiliate Tracker For Professionals [-40% coupon]

Binomial history

In 2015, when iMobiTrax was already poor and Voluum was not performing well enough, my team and I manage tons of cheap traffic for various utilities. We paid $ 3,000 for Voluum, but we dreamed of our own cheaper tracking solution that would have all the features we needed for our jobs. Like this, Binom was born. In the spring of 2016, we started using it for our campaigns and distributing it to friends for testing purposes. In the fall, the tracker became quite good and we started to sell it to the limited circle of affiliates with high volumes of traffic and high requirements in terms of functionality, which stimulated the development of the tracker.

After all, doing our best for others is even better than doing it ourselves. Word of mouth, the product has been distributed from one person to another and, now, because of the total traffic, it is one of the leaders. All the while, we were constantly improving our creation and were so happy with its growth. At the same time, we have solved a lot of practical tasks related to the speed of operation, the interface, to new functions and, for a long time, we hid from Adplexity and have published more 30 updates.

During these years, we have put together an excellent support and development team capable of creating the best product and the best service that we are proud to show to the wide range of people working in affiliate marketing.

At the moment, more than 500 customers from all over the world are working with us. They process more than 2 billion clicks per month.

Now we take the second place by use according to AdPlexity:

Binom is a simple and easy solution with professional abilities. During development, we focus on operational speed and flexibility to solve as many AM tasks as possible.

Main advantages:

  • Interface and redirection speed
  • Fixed price
  • Simple and friendly (a great AM experience allows us to do it as it should)
  • Unlimited number of domains (with free SLL certificates), users, number of rules, duration of data storage
  • Flexibility and customization
  • Tracking without redirection (integrated landings and LP Pixel)
  • Trigger system (for example, decreased profit in the last hour => you receive a message on your voicemail or if an offer is not accessible for any reason – the tracker pauses it)
  • Event tracking and display in reports with formulas
  • Ideal solution for teams: unlimited users with personalized access rights
  • Powerful API to access all the features of the tracker
  • Experienced technical support (always online via e-mail, skype or telegram), free installation of the tracking system, server configuration + optimization

Intercom screen:

The inconvenients:

  • Self-hosted. We try to simplify it for you with technical support, which can handle everything related to the server. Including installation tracking and optimization of the server.
    Technical experience is not necessary!
  • If you save more than 300 million clicks, you may run out of disk space for most servers. We have monitoring and compensation systems in tracking for that.

What's new for your niche?

Pop-Traffic, Mobile:

  • The tracking system can handle huge amounts of traffic (up to 600 million clicks per month).
  • Price does not depend on volumes
  • Super fast redirects and speed reports
  • Filter system (including math) for white and black lists
  • Brands for publishers
  • Checking the areas of the tracker and landing for google ban
  • Bots on landings detect them and display them in a separate column for filtering ads
  • Tracking without redirection for loss reduction and concealment within a URL
  • View the percentage of robots, scrolls and patches, or any measure available in any section
  • IP Range Report
  • A powerful API for automation

Native ads

  • Brands for publishers
  • Update costs by tokens, so you can match with the statistics in the source
  • Tracking behavioral factors across events, for example, the percentage of users connected to social networks
  • Follow-up of the observation depth and the exit points of the landing
  • Group Campaign Reports for Cross-Analysis

Facebook

  • LP Pixel
  • Integrated landings with PHP (create your capes without redirection)
  • Replacing the domain index page to track and filter moderators and bots and view its statistics
  • No restrictions for masking rules: IP, user agents, proxy traffic filters
  • Customization of the URL up to http://site.com/?article=about, understandable URL when using mod_rewrite. In fact, you can create a complete site in the tracking.
  • Follow-up of behavioral factors

Screenshots

Campaigns page:

Reports:

Traffic distribution:

Token Token:

What's in the plans?

  • Automatic optimization of traffic distribution
  • Follow-up of the application
  • Viewing reports
  • Tracking followers
  • Deep integration with sources and networks

Price

The cost of the first license is $ 99 / month.
Extra (for the 2nd server and the following ones) – 49 $ / month.

We have discounts for extended extension.
3 months – 10%, 6 months – 20%, one year – 30%.
This means that a license will only cost you $ 69 a month.

Discounts for MoneyMakerDiscussion members

We offer 40% off for the second month of use. The first month is free.

Use the coupon BinomCommunity at registration

… or check out our live demo.

We will be happy if you write your comments on this thread!

We care about our users and appreciate your participation in this thread.

Remove the green screen funds from photos by professionals for $ 15

  • Professionally remove the green screen background from the photos

I have more than 5 years of experience in Photoshop and Professional Edition.

I take every project seriously and deliver on time. The best quality and fast and friendly customer service with Photoshop

Here are our Photoshop services at a glance:

Background suppression

clipping path, multiple paths

add some neck

restore to vector

natural shadow, resizing the image.

photo masking, transparent masking. * layer masking

alpha masking, image editing. ETC



This service does not have evaluation – order and leave the first one!


$15In stock

.